diff options
author | dos-reis <gdr@axiomatics.org> | 2009-04-20 03:03:50 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2009-04-20 03:03:50 +0000 |
commit | 4957231038f00c946afee42e96b38ea1e2ea108e (patch) | |
tree | d928f3e072219cd37a52a58de0065b47819dbe11 /src/boot | |
parent | 5f31fef6e30bc63657955d95939a310fa37867d8 (diff) | |
download | open-axiom-4957231038f00c946afee42e96b38ea1e2ea108e.tar.gz |
* boot/ast.boot (genECLnativeTranslation): Tidy.
(genSBCLnativeTranslation): Likewise.
* interp/compiler.boot (emitLocalCallInsn): Likewise.
(compForm1): Allow package call to external function.
(compElt): Likewise.
(getExternalSymbolMode): New.
(compForeignPackageCall): Likewise.
Diffstat (limited to 'src/boot')
-rw-r--r-- | src/boot/ast.boot | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/boot/ast.boot b/src/boot/ast.boot index d1a70f11..0e42ac62 100644 --- a/src/boot/ast.boot +++ b/src/boot/ast.boot @@ -1476,11 +1476,10 @@ genECLnativeTranslation(op,s,t,op') == for x in s repeat argtypes := [nativeArgumentType x,:argtypes] args := [GENSYM(),:args] - argtypes := nreverse argtypes - args := nreverse args + args := reverse args rettype := nativeReturnType t [["DEFUN",op, args, - [bfColonColon("FFI","C-INLINE"),args,argtypes, + [bfColonColon("FFI","C-INLINE"),args, nreverse argtypes, rettype, callTemplate(op',#args,s), KEYWORD::ONE_-LINER, true]]] where callTemplate(op,n,s) == @@ -1587,8 +1586,6 @@ genSBCLnativeTranslation(op,s,t,op') == newArgs := [coerceToNativeType(a,x), :newArgs] if needsStableReference? x then unstableArgs := [a,:unstableArgs] - newArgs := nreverse newArgs - unstableArgs = nreverse unstableArgs null unstableArgs => [["DEFUN",op,args, @@ -1596,10 +1593,10 @@ genSBCLnativeTranslation(op,s,t,op') == [INTERN('"EXTERN-ALIEN",'"SB-ALIEN"),SYMBOL_-NAME op', ["FUNCTION",rettype,:argtypes]], :args]]] [["DEFUN",op,args, - [bfColonColon("SB-SYS","WITH-PINNED-OBJECTS"),unstableArgs, + [bfColonColon("SB-SYS","WITH-PINNED-OBJECTS"), nreverse unstableArgs, [INTERN('"ALIEN-FUNCALL",'"SB-ALIEN"), [INTERN('"EXTERN-ALIEN",'"SB-ALIEN"),SYMBOL_-NAME op', - ["FUNCTION",rettype,:argtypes]], :newArgs]]]] + ["FUNCTION",rettype,:argtypes]], :nreverse newArgs]]]] ++ Generate an import declaration for `op' as equivalent of the |