Age | Commit message (Collapse) | Author | Files | Lines |
|
* interp/define.boot (compDefineCategory2): Likewise.
* interp/nruncomp.boot (buildFunctor): Likewise.
* interp/slam.boot (compileRecurrenceRelation): Likewise.
* interp/lisp-backend.boot (expandSeq): Use PROGN in absence of EXIT.
|
|
* interp/define.boot: Likewise.
* interp/g-opt.boot: Likewise.
* interp/g-util.boot: Likewise. Rename mkLabelled to mkScope.
|
|
It is always nil. Adjust caller.
(compDefineCategory1): Likewise.
(compDefineCategory2): Likewise.
(compDefineFunctor): Likewise.
(compDefineFunctor1): Likewise. Bind it to nil.
* interp/lisplib.boot (compDefineLisplib): Likewise.
|
|
(coerceExit): Likewise.
(compRepeatOrCollect): Likewise.
(replaceExitEtc): Tidy.
(canReturn): Likewise.
(compIterate): Generate %lave form.
(nullifyTargetingLeaves): Move out of massageLoop.
(massageLoop): Adjust.
* interp/define.boot (compDefineCapsuleFunction): Generate
%labelled form for the body.
* interp/g-opt.boot: Now handle %labelled and %leave forms.
(optLabelled): Rename from optCatch.
|
|
Recursively nominate constructor argument for inlining. Adjust callers.
* interp/c-util.boot: Tidy.
* algebra/Makefile.in: Tidy.
|
|
(registerRedexForm): New.
(redexForm): Likewise.
(inlineDirectCall): Inline functions with known redex forms.
(foldExportedFunctionReferences): Compute redex forms.
(backendCompileILAM): Remove as unused.
(backendCompile2): Adjust.
(massageBackendCode): Likeiwse.
* interp/define.boot (compDefineCapsuleFunction): Clear
replacement info.
|
|
* interp/nruncomp.boot (deltaTran): assocIndex now handles $.
(getLocalIndex): Likewise.
(NRTencode): Handle $ before calling assocIndex.
(assocIndex): Handle $.
|
|
* interp/define.boot (compDefine1): Avoid encodeItem when
symbolName is meant.
(mkRepititionAssoc): Move from functor.boot
(encodeItem): Likewise.
(getCaps): Likewise. Tidy.
(encodeFunctionName): Likewise.
|
|
signature too.
* interp/nruncomp.boot (genDeltaEntry): Likewise.
(getLocalIndex): Tidy.
(changeDirectoryInSlot1): Tidy.
(vectorLocation): Add a kind of operation as fourth argument.
Adjust caller. Do not reconstruct the signature.
(NRTsubstDelta): Remove as no longer used.
|
|
Adjust callers.
|
|
NRTisExported?. Determine operation kind locally. Do not store
implement slot on the used entity list.
* interp/nruncomp.boot (genDeltaEntry): Likewise.
(deltaTran): Simplify.
(NRTisExported?): Remove.
(vectorLocation): Adjust.
|
|
* algebra/poly.spad.pamphlet: Likewise.
* interp/define.boot (spadCompileOrSetq): Tidy replacement info.
* interp/i-output.boot ($BinaryOperators): New.
(binaryInfix?): Tidy.
|
|
* interp/define.boot (compDefineCapsuleFunction): Call it from here.
* interp/functor.boot (DescendCode): Not here.
|
|
($NRTdeltaListComp): Likeewise.
(compDefineFunctor1): Do not bind them.
(assignCapsuleFunctionSlot): Use dbUsedEntities.
* interp/nruncomp.boot (NRTaddDeltaCode): Likewise.
(dbEntitySlot): New.
(NRTassocIndex): Use it.
(genDeltaEntry): Use dbUsedEntities.
(getLocalIndex): Likewise.
(vectorLocation): Likewise.
(NRTsubstDelta): Likewise.
|
|
* interp/c-util.boot (registerConstructor): New.
(currentConstructor): Likewise.
(makeCompilationData): Initialize dbEntityBuffer.
(dbEntityBuffer): New.
(dbUsedEntities): Likewise.
(dbEntityCount): Likewise.
* interp/compiler.boot: Adjust call to getLocalIndex, NRTassocIndex
* interp/define.boot: Likewise.
($NRTdeltaLength): Remove.
* interp/nruncomp.boot: Likewise.
|
|
from compDefineCapsuleFunction.
(compDefineCapsuleFunction): Use it. Tidy.
|
|
(getArgumentMode): Tidy.
(hasSigInTargetCategory): Likewise.
(refineDefinitionSignature): New. Abstract from
compDefineCapsuleFunction.
(compDefineCapsuleFunction): Use it. Tidy.
|
|
|
|
(localOperation?): New.
(compDefineCapsuleFunction): Increment $suffix. Check for local
and exported function definition here.
(compile): Move capsule-local function processing out.
|
|
* interp/functor.boot: Likewise.
* interp/g-util.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/topics.boot: Likewise.
* interp/trace.boot: Likewise.
|
|
(compDefineFunctor1): Do not bind it.
(reportOnFunctorCompilation): Do not call displayMissingFunctions.
(displayMissingFunctions): Remove as useless.
* interp/functor.boot (SetFunctionSlots): Do not set slot in the
first vector of $catvecList.
* interp/nruncomp.boot (buildFunctor): Remove makeCatvecCode,
emptyVector, domainShell. Do not call NRTcheckVector.
(NRTcheckVector): Remove as useless.
|
|
Adjust callers.
(compDefineFunctor1): Do not bind $functionLocations.
(compDefineCapsuleFunction): Do not update.
* interp/lisplib.boot (transformOperationAlist): Do not consult
$functionLocations.
|
|
nruncomp.boot. Rename from NRTassignCapsuleFunctionSlot. Take
first parameter as a DB. Adjust callers.
(compDefineCapsuleFunction): Tidy.
|
|
Adjust callers.
* interp/compiler.boot: Adjust.
* interp/define.boot: Likewise.
|
|
(initializeGlobalState): Don't bind $compileDefaultsOnly.
* interp/sys-globals.boot ($compileDefaultsOnly): Remove.
* interp/define.boot (compDefineCategory): Adjust.
(compDefineCategory1): Likewise.
(compDefineFunctor1): Clear dbCapsuleDefinitions.
* interp/lisplib.boot (compDefineLisplib): Tidy.
* interp/daase.lisp (BROWSEOPEN): Use dbSourceFile.
(GETDATABASE): Likewise.
(LOCALNRLIB): Likewise.
(WRITE-BROWSEDB): Likewise.
* algebra/Makefile.in (COMPILE_SPAD): Specifiy initial DB.
(BOOTSTRAP): Likewise.
|
|
is a builtin constructor.
(mkDependentsHashTable): Filter out builtin constructors.
* interp/cattable.boot (genCategoryTable): Likewise.
* interp/database.boot (getConstructorModemap): Load the
contructor if necessary and try again before failing.
* interp/define.boot (NRTgetLookupFunction): Handle multiple
inheritance of domains.
(getBaseExports): Rename from getExportCategory. Adjust caller.
Handle multiple inheritance of domains.
(extendsCategory): Do not reference $functorForm. Take it from
the DB argument.
(getTargetFromRhs): Do not optimize codegen.
|
|
references to used entities.
|
|
argument as a DB for the current constructor. Adjust callers.
(compile): Likewise.
(spadCompileOrSetq): Likewise.
(compileConstructor): Likewise.
(compileConstructor1): Likewise.
|
|
* interp/c-util.boot: Likewise.
* interp/define.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/nrunfast.boot: Likewise.
* interp/showimp.boot: Likewise.
|
|
* interp/define.boot ($byteVec): Remove.
(getInfovecCode): Do not bind it.
(makeGoGetSlot): Take DB as first parameter. Adjust caller.
Update dbByteList.
(NRTmakeCategoryAlist): Adjust.
|
|
* interp/c-util.boot (lookupDefiningFunction): Use it. Tidy.
* interp/define.boot ($lookupFunction): Remove.
(getInfovecCode): Use dbLookupFunction.
(compDefineFunctor1): Set it. Do not emit %incomplete anymore.
* interp/lisplib.boot (writeLookupFunction): New.
(finalizeLisplib): Use it.
|
|
compilation starts.
* interp/lisplib.boot (writeLoadInfo): New.
(writeTemplate): Likewise.
(finalizeLisplib): Use it to write template.
|
|
Adjustt caller.
(incompleteFunctorBody): Likewise.
* interp/bc-matrix.boot: Use toString instead of STRINGIMAGE where
appropriate.
* interp/bc-solve.boot: Likewise.
* interp/bc-util.boot: Likewise.
* interp/br-con.boot: Likewise.
* interp/br-op1.boot: Likewise.
* interp/br-saturn.boot: Likewise.
* interp/c-doc.boot: Likewise.
* interp/c-util.boot: Likewise.
* interp/clam.boot: Likewise.
* interp/format.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/g-timer.boot: Likewise.
* interp/htsetvar.boot: Likewise.
* interp/i-funsel.boot: Likewise.
* interp/i-map.boot: Likewise.
* interp/i-output.boot: Likewise.
* interp/i-resolv.boot: Likewise.
* interp/i-special.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/i-util.boot: Likewise.
* interp/msg.boot: Likewise.
* interp/newfort.boot: Likewise.
* interp/parse.boot: Likewise.
* interp/pathname.boot: Likewise.
* interp/setvars.boot: Likewise.
* interp/showimp.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/trace.boot: Likewise.
|
|
|
|
|
|
called. Remove.
(getFunctorOpsAndAtts): Simplify.
(getSlotFromFunctor): Rework.
* interp/define.boot (getInfovecCode): Bind $byteVec and
$byteAddress here.
(compDefineFunctor1): Not here.
|
|
* interp/define.boot ($NRTslot1Info): Likewise.
(getInfovecCode): Add additional environment argument. Adjust caller.
Call NRTmakeSlot1Info here.
(NRTgetLookupFunction): Lose second and third arguments. They are
derivable from the DB argument. Adjust caller.
(compDefineFunctor1): Do not bind $NRTslot1Info.
(compDefineCapsuleFunction): Adjust.
(compile): Likewise.
* interp/i-syscmd.boot (compilerDoitWithScreenedLisplib):
Remove. Adjust caller.
* interp/nruncomp.boot (NRTmakeSlot1Info): Tak a DB argument.
Adjust caller.
(mkSlot1sublis): Remove.
|
|
environment. Adjust callers.
(compCategories1): Likewise.
(NewbFVectorCopy): Remove as deadcode.
(worthlessCode): Tidy.
(DescendCode): Take additional environment parameter. Adjust callers.
* interp/define.boot (isMacro): Simplify.
(wrapDomainSub): Remove. Adjust callers.
* algebra/Makefile.in (strap-2/%.$(FASLEXT)): Fix typo.
|
|
* interp/define.boot (NRTmakeCategoryAlist): Use it.
(compDefineFunctor1): Likewise.
|
|
substituteInfoFunctorModemap.
(constructorCondition): New.
* interp/define.boot (compDefineCategory2): Compute dual signature
early on.
(compDefineFunctor1): Likewise.
(typingKind): New.
(deduceImplicitParameters): Use it.
* interp/database.boot (modemapsFromCategory): Take a first
argument as a DB. Tidy. Adjust caller. Add constructor condition.
(modemapsFromFunctor): Likewise. Lose last argument.
(mkDatabasePred): Remove.
(formal2Pattern): Likewise.
|
|
early on.
(compDefineFunctor1): Likewise.
* interp/database.boot (modemapsFromCategory): Take a first
argument as a DB. Tidy. Adjust caller.
(modemapsFromFunctor): Likewise. Lose last argument.
(mkDatabasePred): Remove.
(formal2Pattern): Likewise.
|
|
early on.
* interp/database.boot (modemapsFromCategory): Take a first
argument as a DB. Tidy. Adjust caller.
|
|
* interp/sys-constants.boot ($QueryVariables): New.
* interp/define.boot ($whreDecls): Remove.
(checkRepresentation): Take a DB as first parameter. Adjust Callers.
(buildConstructorCondition): New
(deduceImplicitParameters): Likewise
(compDefineCategory2): Use it.
(compDefineFunctor1): Likewise.
(typeDependencyPath): Remove.
(inferConstructorImplicitParameters): Likewise.
* interp/compiler.boot (compTopLevel): Do not bind $whereDecls.
(recordDeclarationInSideCondition): Take additional reference
parameter to the list of processed decls. Adjust callers.
(compWhere): Record any side decls in compilation environment.
* interp/c-util.boot (makeCompilationData): Initialize implicit data.
(dbParameters): New.
(dbImplicitData): New accessor macro.
(dbImplicitParameters): New.
(dbImplicitConstraints): Likewise.
(dbSubstituteFormals): Likewise.
(dbSubstituteQueries): Likewise.
* interp/database.boot (fixUpPredicate): Tidy.
* boot/utility.boot (applySubst): Early exit on identity substitution.
(applySubst!): Likewise.
(applySubstNQ): Likewise.
* boot/ast.boot (bfIS1): Accept pattern matching against Boolean
constant true.
|
|
(dbBeingDefined?): Adjust.
* interp/c-util.boot (makeCompilationData): New.
(dbFormalSubst): New accessor macro.
(dbSubstituteFormals): New.
* interp/define.boot ($pairlis): Remove.
(NRTmakeCategoryAlist): Use dbSubstituteFormals.
(NRTgetLookupFunction): Likewise.
(compDefineCategory2): Likewise. Set dbCompilerData and dbFormalSubst.
(compDefineFunctor1): Likewise.
* interp/functor.boot (ProcessCond): Use dbSubstituteFormals.
* interp/lisplib.boot (NRTgenInitialAttributeAlist): Likewise.
(makePredicateBitVector): Likewise.
(finalizeLisplib): Do not set $pairlis.
|
|
Adjust callers.
(NRTdescendCodeTran): Likewise.
* interp/define.boot (makeDomainTemplate): Lose second argument.
Adjust callers.
(NRTgetLookupFunction): Take a DB as first argument. Adjust callers.
(NRTextendsCategory1): Likewise.
(extendsCategory): Likewise.
(compDefineFunctor1): Do not find $template. Set dbTemplate.
|
|
(compSignature): Take a fourth parameter.
(compCategoryItem): Take two more parameters.
(compCategory): Create references to signature and attribute lists
and pass them to callees.
|
|
it to callees. Adjust caller.
* interp/database.boot (getConstructorPredicates): If contructor
is being defined, return the predicates as currently known.
* interp/daase.lisp (INITIAL-GETDATABASE): Remove
(fillDatabasesInCore): Adjust.
|
|
* interp/daase.lisp (DATABSE): Add new field TEMPLATE.
(dbTemplate): New macro accessor.
* interp/clam.boot (clearCategoryCaches): Clear dbTemplate.
* interp/define.boot (DomainSubstitutionFunction): Generate code
to access or set dbTemplate.
|
|
(dbCapsuleDefinitions): New macro accessor.
* interp/functor.boot (encodeFunctionName): Set it.
* interp/lisplib.boot ($lisplibVariableAlist): Remove.
($lisplibSignatureAlist): Likewise.
(writeCapsuleLevelDefinitions): New.
(finalizeLisplib): Use it.
(mergeSignatureAndLocalVarAlists): Remove.
* interp/clam.boot (clearCategoryCaches): Use mkDomainCatName.
* interp/define.boot (DomainSubstitutionFunction): Likewise.
|
|
(compDefineCategory1): Adjust.
(compDefineCategory2): Likewise.
(compDefineCategory): Likewise.
(compDefineFunctor1): Likewise.
* interp/lisplib.boot (finalizeLisplib): Likewise.
* interp/br-data.boot (getParentsFor): Lose last paramater.
|