From aed2eab655c127d6da157be245db6b28a832843d Mon Sep 17 00:00:00 2001 From: Hongbo Rong <hongbo.rong@intel.com> Date: Thu, 28 Aug 2014 18:34:18 -0700 Subject: [PATCH 01/11] Initial release of Julia-2-C implementation --- base/base.jl | 2 +- base/inference.jl | 10 +- base/serialize.jl | 4 + j2c/README | 10 + src/Makefile | 2 +- src/alloc.c | 1 + src/array.c | 19 + src/builtin_proto.h | 2 + src/builtins.c | 3 + src/ccall.cpp | 33 +- src/codegen.cpp | 587 +++++++++--- src/dump.c | 6 +- src/gf.c | 1 + src/intrinsics.cpp | 144 ++- src/j2c-calls.cpp | 192 ++++ src/j2c.cpp | 2153 ++++++++++++++++++++++++++++++++++++++++++ src/j2c.h | 98 ++ src/jltypes.c | 8 +- src/julia.expmap | 1 + src/julia.h | 4 + test/j2c.jl | 56 ++ test/j2c/pse-types.c | 148 +++ test/j2c/pse-types.h | 56 ++ 23 files changed, 3334 insertions(+), 206 deletions(-) create mode 100644 j2c/README create mode 100644 src/j2c-calls.cpp create mode 100644 src/j2c.cpp create mode 100644 src/j2c.h create mode 100644 test/j2c.jl create mode 100644 test/j2c/pse-types.c create mode 100644 test/j2c/pse-types.h diff --git a/base/base.jl b/base/base.jl index 1309006009ab1..e8f4291a28ee0 100644 --- a/base/base.jl +++ b/base/base.jl @@ -1,6 +1,6 @@ # important core definitions -using Core: Intrinsics, arraylen, arrayref, arrayset, arraysize, +using Core: Intrinsics, arraylen, arrayref, arrayset, unsafe_arrayref, unsafe_arrayset, arraysize, tuplelen, tupleref, convert_default, kwcall, typeassert, apply_type diff --git a/base/inference.jl b/base/inference.jl index 0ca86f5b93911..526db1ef16672 100644 --- a/base/inference.jl +++ b/base/inference.jl @@ -474,12 +474,12 @@ function builtin_tfunction(f::ANY, args::ANY, argtypes::ANY) return Type{map(t->t.parameters[1], t)} end return t - elseif is(f,arrayset) + elseif is(f,arrayset) || is(f,unsafe_arrayset) if length(argtypes) < 3 return None end return argtypes[1] - elseif is(f,arrayref) + elseif is(f,arrayref) || is(f,unsafe_arrayref) if length(argtypes) < 2 return None end @@ -1818,7 +1818,7 @@ function without_linenums(a::Array{Any,1}) end const _pure_builtins = {tuple, tupleref, tuplelen, fieldtype, apply_type, is, isa, typeof} # known affect-free calls (also effect-free) -const _pure_builtins_volatile = {getfield, arrayref} # known effect-free calls (might not be affect-free) +const _pure_builtins_volatile = {getfield, arrayref, unsafe_arrayref} # known effect-free calls (might not be affect-free) function is_pure_builtin(f) if contains_is(_pure_builtins, f) @@ -1984,7 +1984,7 @@ function inlineable(f, e::Expr, atypes, sv, enclosing_ast) if !(atypes <: meth[1]) return NF end - if !isa(linfo,LambdaStaticData) || meth[3].func.env !== () + if !isa(linfo,LambdaStaticData) || meth[3].func.env !== () || (linfo.j2cflag & 2 == 2) return NF end @@ -2019,7 +2019,7 @@ function inlineable(f, e::Expr, atypes, sv, enclosing_ast) body = Expr(:block) body.args = without_linenums(ast.args[3].args)::Array{Any,1} - if !inline_worthy(body) + if !(linfo.j2cflag & 1 == 1) && !inline_worthy(body) return NF end diff --git a/base/serialize.jl b/base/serialize.jl index b3032953402a0..a40f935a2112b 100644 --- a/base/serialize.jl +++ b/base/serialize.jl @@ -31,6 +31,7 @@ let i = 2 :mul_float, :unbox, :box, :eq_int, :slt_int, :sle_int, :ne_int, :arrayset, :arrayref, + :unsafe_arrayset, :unsafe_arrayref, :reserved13, :reserved14, :reserved15, :reserved16, :reserved17, :reserved18, :reserved19, :reserved20, false, true, nothing, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, @@ -225,6 +226,7 @@ function serialize(s, linfo::LambdaStaticData) serialize(s, {}) end serialize(s, linfo.sparams) + serialize(s, linfo.j2cflag) serialize(s, linfo.inferred) serialize(s, linfo.module) if isdefined(linfo, :capt) @@ -370,6 +372,7 @@ function deserialize(s, ::Type{LambdaStaticData}) ast = deserialize(s) roots = deserialize(s) sparams = deserialize(s) + j2cflag = deserialize(s) infr = deserialize(s) mod = deserialize(s) capt = deserialize(s) @@ -377,6 +380,7 @@ function deserialize(s, ::Type{LambdaStaticData}) return known_lambda_data[lnumber] else linfo = ccall(:jl_new_lambda_info, Any, (Any, Any), ast, sparams) + linfo.j2cflag = j2cflag linfo.inferred = infr linfo.module = mod linfo.roots = roots diff --git a/j2c/README b/j2c/README new file mode 100644 index 0000000000000..e4ee867f94c96 --- /dev/null +++ b/j2c/README @@ -0,0 +1,10 @@ +First, you need to set JULIA_ROOT environment to the full path to this +directory. This is where j2c output file, and object file will be stored. + +To run J2C example, go to the julia/test directory, run: + + ../julia j2c.jl + +It should finish without any error. Check julia/j2c directory for the +intermediate files during J2C compilation. + diff --git a/src/Makefile b/src/Makefile index b7ab79cee1b7e..0724ff7ab0614 100644 --- a/src/Makefile +++ b/src/Makefile @@ -64,7 +64,7 @@ julia_flisp.boot: julia-parser.scm julia-syntax.scm \ match.scm utils.scm jlfrontend.scm mk_julia_flisp_boot.scm flisp/libflisp.a @$(call PRINT_FLISP, $(call spawn,./flisp/flisp) ./mk_julia_flisp_boot.scm) -codegen.o codegen.do: intrinsics.cpp debuginfo.cpp cgutils.cpp ccall.cpp disasm.cpp +codegen.o codegen.do: intrinsics.cpp debuginfo.cpp cgutils.cpp ccall.cpp disasm.cpp j2c.cpp j2c.h j2c-calls.cpp builtins.o builtins.do: table.c support/libsupport.a: support/*.h support/*.c diff --git a/src/alloc.c b/src/alloc.c index 96334a57528f1..5235dd0f44894 100644 --- a/src/alloc.c +++ b/src/alloc.c @@ -401,6 +401,7 @@ jl_lambda_info_t *jl_new_lambda_info(jl_value_t *ast, jl_tuple_t *sparams) li->functionID = 0; li->cFunctionID = 0; li->specTypes = NULL; + li->j2cflag = 0; li->inferred = 0; li->inInference = 0; li->inCompile = 0; diff --git a/src/array.c b/src/array.c index a75d3aa78c900..c639ad200d63a 100644 --- a/src/array.c +++ b/src/array.c @@ -457,6 +457,15 @@ JL_CALLABLE(jl_f_arrayref) return jl_arrayref(a, i); } +JL_CALLABLE(jl_f_unsafe_arrayref) +{ + JL_NARGSV(unsafe_arrayref, 2); + JL_TYPECHK(unsafe_arrayref, array, args[0]); + jl_array_t *a = (jl_array_t*)args[0]; + size_t i = array_nd_index(a, &args[1], nargs-1, "unsafe_arrayref"); + return jl_arrayref(a, i); +} + int jl_array_isdefined(jl_value_t **args0, int nargs) { assert(jl_is_array(args0[0])); @@ -511,6 +520,16 @@ JL_CALLABLE(jl_f_arrayset) return args[0]; } +JL_CALLABLE(jl_f_unsafe_arrayset) +{ + JL_NARGSV(unsafe_arrayset, 3); + JL_TYPECHK(unsafe_arrayset, array, args[0]); + jl_array_t *a = (jl_array_t*)args[0]; + size_t i = array_nd_index(a, &args[2], nargs-2, "unsafe_arrayset"); + jl_arrayset(a, args[1], i); + return args[0]; +} + void jl_arrayunset(jl_array_t *a, size_t i) { if (i >= jl_array_len(a)) diff --git a/src/builtin_proto.h b/src/builtin_proto.h index 4ae5efd5f2c49..b9cb6a2f65169 100644 --- a/src/builtin_proto.h +++ b/src/builtin_proto.h @@ -40,6 +40,8 @@ JL_CALLABLE(jl_f_applicable); JL_CALLABLE(jl_f_invoke); JL_CALLABLE(jl_f_task); JL_CALLABLE(jl_f_yieldto); +JL_CALLABLE(jl_f_unsafe_arrayref); +JL_CALLABLE(jl_f_unsafe_arrayset); #ifdef __cplusplus } diff --git a/src/builtins.c b/src/builtins.c index 3b53e7bcebcc1..61847d2a81c8d 100644 --- a/src/builtins.c +++ b/src/builtins.c @@ -983,6 +983,9 @@ void jl_init_primitives(void) add_builtin_func("apply_type", jl_f_instantiate_type); + add_builtin_func("unsafe_arrayref", jl_f_unsafe_arrayref); + add_builtin_func("unsafe_arrayset", jl_f_unsafe_arrayset); + // builtin types add_builtin("Any", (jl_value_t*)jl_any_type); add_builtin("None", (jl_value_t*)jl_bottom_type); diff --git a/src/ccall.cpp b/src/ccall.cpp index 9b284f820795a..0c5a6698415c1 100644 --- a/src/ccall.cpp +++ b/src/ccall.cpp @@ -570,9 +570,13 @@ static Value *emit_cglobal(jl_value_t **args, size_t nargs, jl_codectx_t *ctx) // --- code generator for ccall itself --- +// In calling to j2c_*, we always do that after the original emit_* is done, so that the children +// ast nodes have been processed, and thus we may do something like size inference. +#define END_EMIT_CCALL { if(in_j2c) j2c_ccall(f_name, f_lib, jl_ptr, fptr, args, nargs, ctx, ast_node); } + // ccall(pointer, rettype, (argtypes...), args...) -static Value *emit_ccall(jl_value_t **args, size_t nargs, jl_codectx_t *ctx) -{ +static Value *emit_ccall(jl_value_t **args, size_t nargs, jl_codectx_t *ctx, jl_value_t* ast_node) +{ JL_NARGSV(ccall, 3); jl_value_t *rt=NULL, *at=NULL; JL_GC_PUSH2(&rt, &at); @@ -735,7 +739,9 @@ static Value *emit_ccall(jl_value_t **args, size_t nargs, jl_codectx_t *ctx) assert(lrt->isPointerTy()); Value *ary = emit_expr(args[4], ctx); JL_GC_POP(); - return mark_julia_type(builder.CreateBitCast(emit_arrayptr(ary),lrt), rt); + Value *return_val = mark_julia_type(builder.CreateBitCast(emit_arrayptr(ary),lrt), rt); + if (in_j2c) j2c_array_ptr(ast_node, args, ctx); + return return_val; } if (fptr == &jl_value_ptr || (f_lib==NULL && f_name && !strcmp(f_name,"jl_value_ptr"))) { @@ -748,9 +754,11 @@ static Value *emit_ccall(jl_value_t **args, size_t nargs, jl_codectx_t *ctx) } Value *ary = boxed(emit_expr(argi, ctx),ctx); JL_GC_POP(); - return mark_julia_type( + Value *return_val = mark_julia_type( builder.CreateBitCast(emit_nthptr_addr(ary, addressOf?1:0), lrt), rt); + J2C_UNIMPL("emit ccall: jl_value_ptr"); + return return_val; } // save place before arguments, for possible insertion of temp arg @@ -877,12 +885,14 @@ static Value *emit_ccall(jl_value_t **args, size_t nargs, jl_codectx_t *ctx) null_pointer_check(jl_ptr,ctx); Type *funcptype = PointerType::get(functype,0); llvmf = builder.CreateIntToPtr(jl_ptr, funcptype); + J2C_UNIMPL("emit ccall: jl ptr"); } else if (fptr != NULL) { Type *funcptype = PointerType::get(functype,0); llvmf = literal_static_pointer_val(fptr, funcptype); if (imaging_mode) JL_PRINTF(JL_STDERR,"warning: literal address used in ccall for %s; code cannot be statically compiled\n", f_name); + J2C_UNIMPL("emit ccall: literal address"); } else { assert(f_name != NULL); @@ -979,8 +989,11 @@ static Value *emit_ccall(jl_value_t **args, size_t nargs, jl_codectx_t *ctx) } JL_GC_POP(); - if (!sret && lrt == T_void) - return literal_pointer_val((jl_value_t*)jl_nothing); + if (!sret && lrt == T_void) { + Value *return_val = literal_pointer_val((jl_value_t*)jl_nothing); + J2C_UNIMPL("emit ccall: jl_nothing"); + return return_val; + } if (lrt->isStructTy()) { //fprintf(stderr, "ccall rt: %s -> %s\n", f_name, ((jl_tag_type_t*)rt)->name->name->name); assert(jl_is_structtype(rt)); @@ -994,7 +1007,11 @@ static Value *emit_ccall(jl_value_t **args, size_t nargs, jl_codectx_t *ctx) builder.CreateBitCast( emit_nthptr_addr(strct, (size_t)1), PointerType::get(lrt,0))); - return mark_julia_type(strct, rt); + Value *return_val = mark_julia_type(strct, rt); + J2C_UNIMPL("emit ccall: structTy"); + return return_val; } - return mark_julia_type(result, rt); + Value *return_val = mark_julia_type(result, rt); + END_EMIT_CCALL + return return_val; } diff --git a/src/codegen.cpp b/src/codegen.cpp index 1e78a1b46571b..b4df79cbabb14 100644 --- a/src/codegen.cpp +++ b/src/codegen.cpp @@ -111,6 +111,8 @@ #include <set> #include <cstdio> #include <cassert> +#include <fstream> +#include <iostream> using namespace llvm; extern "C" { @@ -283,56 +285,8 @@ static Function *jlgetnthfieldchecked_func; static Function *resetstkoflw_func; #endif -// --- code generation --- - -// per-local-variable information -struct jl_varinfo_t { - Value *memvalue; // an address, if the var is alloca'd - Value *SAvalue; // register, if the var is SSA - Value *passedAs; // if an argument, the original passed value - int closureidx; // index in closure env, or -1 - bool isAssigned; - bool isCaptured; - bool isSA; - bool isVolatile; - bool isArgument; - bool isGhost; // Has size 0 and is thus never actually allocated - bool hasGCRoot; - bool escapes; - bool usedUndef; - bool used; - jl_value_t *declType; - jl_value_t *initExpr; // initializing expression for SSA variables - - jl_varinfo_t() : memvalue(NULL), SAvalue(NULL), passedAs(NULL), closureidx(-1), - isAssigned(true), isCaptured(false), isSA(false), isVolatile(false), - isArgument(false), isGhost(false), hasGCRoot(false), escapes(true), - usedUndef(false), used(false), - declType((jl_value_t*)jl_any_type), initExpr(NULL) - { - } -}; - -// --- helpers for reloading IR image static void jl_gen_llvm_gv_array(); -extern "C" -void jl_dump_bitcode(char* fname) -{ - std::string err; -#ifdef LLVM35 - raw_fd_ostream OS(fname, err, sys::fs::F_None); -#else - raw_fd_ostream OS(fname, err); -#endif - jl_gen_llvm_gv_array(); -#ifdef USE_MCJIT - WriteBitcodeToFile(shadow_module, OS); -#else - WriteBitcodeToFile(jl_Module, OS); -#endif -} - extern "C" void jl_dump_objfile(char* fname, int jit_model) { @@ -381,65 +335,6 @@ void jl_dump_objfile(char* fname, int jit_model) #endif } -// aggregate of array metadata -typedef struct { - Value *dataptr; - Value *len; - std::vector<Value*> sizes; - jl_value_t *ty; -} jl_arrayvar_t; - -// information about the context of a piece of code: its enclosing -// function and module, and visible local variables and labels. -typedef struct { - Function *f; - // local var info. globals are not in here. - // NOTE: you must be careful not to access vars[s] before you are sure "s" is - // a local, since otherwise this will add it to the map. - std::map<jl_sym_t*, jl_varinfo_t> vars; - std::map<jl_sym_t*, jl_arrayvar_t> *arrayvars; - std::map<int, BasicBlock*> *labels; - std::map<int, Value*> *handlers; - jl_module_t *module; - jl_expr_t *ast; - jl_tuple_t *sp; - jl_lambda_info_t *linfo; - Value *envArg; - Value *argArray; - Value *argCount; - Instruction *argTemp; - int argDepth; - int maxDepth; - int argSpaceOffs; - std::string funcName; - jl_sym_t *vaName; // name of vararg argument - bool vaStack; // varargs stack-allocated - int nReqArgs; - int lineno; - std::vector<bool> boundsCheck; -#ifdef JL_GC_MARKSWEEP - Instruction *gcframe ; - Instruction *argSpaceInits; - StoreInst *storeFrameSize; -#endif - BasicBlock::iterator first_gcframe_inst; - BasicBlock::iterator last_gcframe_inst; - llvm::DIBuilder *dbuilder; - std::vector<Instruction*> gc_frame_pops; - std::vector<CallInst*> to_inline; -} jl_codectx_t; - -static Value *emit_expr(jl_value_t *expr, jl_codectx_t *ctx, bool boxed=true, - bool valuepos=true); -static Value *emit_unboxed(jl_value_t *e, jl_codectx_t *ctx); -static int is_global(jl_sym_t *s, jl_codectx_t *ctx); -static Value *make_gcroot(Value *v, jl_codectx_t *ctx); -static Value *global_binding_pointer(jl_module_t *m, jl_sym_t *s, - jl_binding_t **pbnd, bool assign); -static Value *emit_checked_var(Value *bp, jl_sym_t *name, jl_codectx_t *ctx); -static bool might_need_root(jl_value_t *ex); -static Value *emit_condition(jl_value_t *cond, const std::string &msg, jl_codectx_t *ctx); - // NoopType static Type *NoopType; @@ -457,8 +352,6 @@ const char *jl_cpu_string = "native"; int globalUnique = 0; } -#include "cgutils.cpp" - static void jl_rethrow_with_add(const char *fmt, ...) { if (jl_typeis(jl_exception_in_transit, jl_errorexception_type)) { @@ -659,6 +552,12 @@ static Function *jl_cfunction_object(jl_function_t *f, jl_value_t *rt, jl_value_ return NULL; } +int enable_j2c_verbose = 0; +extern "C" DLLEXPORT +void set_j2c_verbose(int value) { + enable_j2c_verbose = value; +} + // get the address of a C-callable entry point for a function extern "C" DLLEXPORT void *jl_function_ptr(jl_function_t *f, jl_value_t *rt, jl_value_t *argt) @@ -740,6 +639,148 @@ const jl_value_t *jl_dump_function(jl_function_t *f, jl_tuple_t *types, bool dum return jl_dump_llvmf(llvmf,dumpasm); } +// --- code generation --- + +// per-local-variable information +struct jl_varinfo_t { + Value *memvalue; // an address, if the var is alloca'd + Value *SAvalue; // register, if the var is SSA + Value *passedAs; // if an argument, the original passed value + int closureidx; // index in closure env, or -1 + bool isAssigned; + bool isCaptured; + bool isSA; + bool isVolatile; + bool isArgument; + bool isGhost; // Has size 0 and is thus never actually allocated + bool hasGCRoot; + bool escapes; + bool usedUndef; + bool used; + jl_value_t *declType; + jl_value_t *initExpr; // initializing expression for SSA variables + + jl_varinfo_t() : memvalue(NULL), SAvalue(NULL), passedAs(NULL), closureidx(-1), + isAssigned(true), isCaptured(false), isSA(false), isVolatile(false), + isArgument(false), isGhost(false), hasGCRoot(false), escapes(true), + usedUndef(false), used(false), + declType((jl_value_t*)jl_any_type), initExpr(NULL) + { + } +}; + +// --- helpers for reloading IR image +extern "C" +void jl_set_imaging_mode(int stat) +{ + imaging_mode = !!stat; +} + +extern "C" +void jl_dump_bitcode(char* fname) +{ + std::string err; + raw_fd_ostream OS(fname, err); + jl_gen_llvm_gv_array(); + WriteBitcodeToFile(jl_Module, OS); +} + +// aggregate of array metadata +typedef struct { + Value *dataptr; + Value *len; + std::vector<Value*> sizes; + jl_value_t *ty; +} jl_arrayvar_t; + +#include "j2c.h" + +// information about the context of a piece of code: its enclosing +// function and module, and visible local variables and labels. +typedef struct { + Function *f; + // local var info. globals are not in here. + // NOTE: you must be careful not to access vars[s] before you are sure "s" is + // a local, since otherwise this will add it to the map. + std::map<jl_sym_t*, jl_varinfo_t> vars; + std::map<jl_sym_t*, jl_arrayvar_t> *arrayvars; + std::map<int, BasicBlock*> *labels; + std::map<int, Value*> *handlers; + jl_module_t *module; + jl_expr_t *ast; + jl_tuple_t *sp; + jl_lambda_info_t *linfo; + Value *envArg; + Value *argArray; + Value *argCount; + Instruction *argTemp; + int argDepth; + int maxDepth; + int argSpaceOffs; + std::string funcName; + jl_sym_t *vaName; // name of vararg argument + bool vaStack; // varargs stack-allocated + int nReqArgs; + int lineno; + std::vector<bool> boundsCheck; +#ifdef JL_GC_MARKSWEEP + Instruction *gcframe ; + Instruction *argSpaceInits; + StoreInst *storeFrameSize; +#endif + BasicBlock::iterator first_gcframe_inst; + BasicBlock::iterator last_gcframe_inst; + llvm::DIBuilder *dbuilder; + std::vector<Instruction*> gc_frame_pops; + std::vector<CallInst*> to_inline; + + // Below is for j2c only + std::map<jl_value_t*, ast_node_result_t*> ast_node_results; +} jl_codectx_t; + +static Value *emit_expr(jl_value_t *expr, jl_codectx_t *ctx, bool boxed=true, + bool valuepos=true); +static Value *emit_unboxed(jl_value_t *e, jl_codectx_t *ctx); +static int is_global(jl_sym_t *s, jl_codectx_t *ctx); +static Value *make_gcroot(Value *v, jl_codectx_t *ctx); +static Value *global_binding_pointer(jl_module_t *m, jl_sym_t *s, + jl_binding_t **pbnd, bool assign); +static Value *emit_checked_var(Value *bp, jl_sym_t *name, jl_codectx_t *ctx); +static bool might_need_root(jl_value_t *ex); +static Value *emit_condition(jl_value_t *cond, const std::string &msg, jl_codectx_t *ctx); + +// --- utilities --- + +#include "cgutils.cpp" +#include "j2c.cpp" + +class print_in_out { +protected: + char *str; + int count; + jl_value_t *expr; +public: + print_in_out(char *s, int &c, jl_value_t *e) : str(s), expr(e) { + if (enable_j2c_verbose) { + if (in_j2c) { + c++; + count = c; + JL_PRINTF(JL_STDOUT, "%s %d\n", str, count); + jl_static_show(JL_STDOUT, expr); + JL_PRINTF(JL_STDOUT, "\n\n"); + } + } + } + + ~print_in_out() { + if (enable_j2c_verbose) { + if (in_j2c) { + JL_PRINTF(JL_STDOUT, "Finished %s %d\n", str, count); + } + } + } +}; + // --- code gen for intrinsic functions --- #include "intrinsics.cpp" @@ -1252,15 +1293,17 @@ static jl_tuple_t *call_arg_types(jl_value_t **args, size_t n, jl_codectx_t *ctx return t; } -static Value *emit_getfield(jl_value_t *expr, jl_sym_t *name, jl_codectx_t *ctx) +static Value *emit_getfield(jl_value_t *expr, jl_sym_t *name, jl_codectx_t *ctx, jl_value_t *ast_node) { if (jl_is_quotenode(expr) && jl_is_module(jl_fieldref(expr,0))) expr = jl_fieldref(expr,0); if (jl_is_module(expr)) { + jl_binding_t *bnd; Value *bp = - global_binding_pointer((jl_module_t*)expr, name, NULL, false); + global_binding_pointer((jl_module_t*)expr, name, &bnd, false); // todo: use type info to avoid undef check + if (in_j2c) j2c_getfield(expr, &bnd, ctx, ast_node); return emit_checked_var(bp, name, ctx); } @@ -1274,6 +1317,7 @@ static Value *emit_getfield(jl_value_t *expr, jl_sym_t *name, jl_codectx_t *ctx) jl_value_t *jfty = jl_tupleref(sty->types, idx); Value *strct = emit_expr(expr, ctx, false); if (strct->getType() == jl_pvalue_llvmt) { + J2C_UNIMPL("emit_getfield: llvmt"); Value *addr = builder.CreateGEP(builder.CreateBitCast(strct, T_pint8), ConstantInt::get(T_size, @@ -1298,6 +1342,7 @@ static Value *emit_getfield(jl_value_t *expr, jl_sym_t *name, jl_codectx_t *ctx) null_pointer_check(fldv, ctx); } JL_GC_POP(); + if(in_j2c) j2c_getfield(expr, name, ctx, ast_node); return mark_julia_type(fldv, jfty); } } @@ -1305,6 +1350,7 @@ static Value *emit_getfield(jl_value_t *expr, jl_sym_t *name, jl_codectx_t *ctx) // TODO: attempt better codegen for approximate types, if the types // and offsets of some fields are independent of parameters. JL_GC_POP(); + J2C_UNIMPL("emit_getfield: better code gen"); int argStart = ctx->argDepth; Value *arg1 = boxed(emit_expr(expr, ctx),ctx,expr_type(expr,ctx)); @@ -1347,12 +1393,13 @@ static void emit_setfield(jl_datatype_t *sty, Value *strct, size_t idx, // and varg1 and varg2 are LLVM values for the arguments if we have them. static Value *emit_f_is(jl_value_t *rt1, jl_value_t *rt2, jl_value_t *arg1, jl_value_t *arg2, - Value *varg1, Value *varg2, jl_codectx_t *ctx) + Value *varg1, Value *varg2, jl_codectx_t *ctx, jl_value_t* ast_node) { if (jl_is_type_type(rt1) && jl_is_type_type(rt2) && !jl_is_typevar(jl_tparam0(rt1)) && !jl_is_typevar(jl_tparam0(rt2)) && (!arg1 || is_constant(arg1, ctx)) && (!arg2 || is_constant(arg2, ctx))) { + J2C_UNIMPL("emit known call: jl_f_is constant"); if (jl_tparam0(rt1) == jl_tparam0(rt2)) return ConstantInt::get(T_int1, 1); return ConstantInt::get(T_int1, 0); @@ -1377,6 +1424,7 @@ static Value *emit_f_is(jl_value_t *rt1, jl_value_t *rt2, varg2 = isbits ? auto_unbox(arg2, ctx) : emit_expr(arg2, ctx); if (isleaf && !isteq && !jl_is_type_type(rt1) && !jl_is_type_type(rt2)) { ctx->argDepth = last_depth; + J2C_UNIMPL("emit known call: jl_f_is const leaf"); return ConstantInt::get(T_int1, 0); } Type *at1 = varg1->getType(); @@ -1386,8 +1434,10 @@ static Value *emit_f_is(jl_value_t *rt1, jl_value_t *rt2, if (at1->isIntegerTy() || at1->isPointerTy() || at1->isFloatingPointTy()) { answer = builder.CreateICmpEQ(JL_INT(varg1),JL_INT(varg2)); + if (in_j2c) j2c_is(arg1, arg2, ctx, ast_node); goto done; } + J2C_UNIMPL("emit known call: jl_f_is struct"); if (at1->isStructTy() && !ptr_comparable) { // TODO: tuples jl_datatype_t *sty = (jl_datatype_t*)rt1; @@ -1399,13 +1449,14 @@ static Value *emit_f_is(jl_value_t *rt1, jl_value_t *rt2, emit_f_is(fldty, fldty, NULL, NULL, builder.CreateExtractValue(varg1, ArrayRef<unsigned>(&i,1)), builder.CreateExtractValue(varg2, ArrayRef<unsigned>(&i,1)), - ctx); + ctx, ast_node); answer = builder.CreateAnd(answer, subAns); } goto done; } } } + J2C_UNIMPL("emit known call: jl_f_is boxed"); varg1 = boxed(varg1,ctx); varg2 = boxed(varg2,ctx); if (ptr_comparable) answer = builder.CreateICmpEQ(varg1, varg2); @@ -1421,9 +1472,29 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, Value **theFptr, jl_function_t **theF, jl_value_t *expr) { +#ifdef J2C_VERBOSE + static int count=0; + print_in_out pio("**** emit known_call ", count, expr); + +#if 0 + if (enable_j2c_verbose) { + if (in_j2c) + { + static int count=0; + count++; + JL_PRINTF(JL_STDOUT, "**** emit_known_call %d function is\n", count); + jl_static_show(JL_STDOUT, ff); + JL_PRINTF(JL_STDOUT, " expr is\n"); + jl_static_show(JL_STDOUT, expr); + JL_PRINTF(JL_STDOUT, "\n\n"); + } + } +#endif +#endif + if (jl_typeis(ff, jl_intrinsic_type)) { return emit_intrinsic((intrinsic)*(uint32_t*)jl_data_ptr(ff), - args, nargs, ctx); + args, nargs, ctx, expr); } if (!jl_is_func(ff)) { return NULL; @@ -1458,7 +1529,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, else if (f->fptr == &jl_f_is && nargs==2) { rt1 = expr_type(args[1], ctx); rt2 = expr_type(args[2], ctx); - Value *ans = emit_f_is(rt1,rt2, args[1],args[2], NULL,NULL, ctx); + Value *ans = emit_f_is(rt1,rt2, args[1],args[2], NULL,NULL, ctx, expr); JL_GC_POP(); return ans; } @@ -1471,10 +1542,12 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, if (jl_is_type_type(aty)) aty = (jl_value_t*)jl_typeof(jl_tparam0(aty)); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_typeof leaf"); return literal_pointer_val(aty); } arg1 = boxed(arg1,ctx); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_typeof"); return emit_typeof(arg1); } } @@ -1491,18 +1564,21 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, BasicBlock *cont = BasicBlock::Create(getGlobalContext(),"after_assert",ctx->f); builder.SetInsertPoint(cont); } + J2C_UNIMPL("emit known call: jl_f_typeassert subtype"); return v; } if (tp0 == jl_bottom_type) { emit_expr(args[1], ctx); emit_error("reached code declared unreachable", ctx); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_typeassert bottom type"); return NULL; } if (!jl_is_tuple(tp0) && jl_is_leaf_type(tp0)) { Value *arg1 = emit_expr(args[1], ctx); emit_typecheck(arg1, tp0, "typeassert", ctx); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_typeof"); return arg1; } } @@ -1524,6 +1600,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, builder.CreateCall2(prepare_call(typeassert), arg1, boxed(emit_expr(args[2], ctx),ctx)); ctx->argDepth = ldepth; JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_subtype"); return arg1; } } @@ -1534,16 +1611,19 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, jl_value_t *tp0 = jl_tparam0(ty); if (arg != jl_bottom_type && jl_subtype(arg, tp0, 0)) { JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_isa"); return ConstantInt::get(T_int1,1); } if (!jl_is_tuple(tp0) && jl_is_leaf_type(tp0) && !jl_is_type_type(tp0)) { if (jl_is_leaf_type(arg)) { JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_isa"); return ConstantInt::get(T_int1,0); } Value *arg1 = emit_expr(args[1], ctx); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_isa"); return builder.CreateICmpEQ(emit_typeof(arg1), literal_pointer_val(tp0)); } @@ -1555,11 +1635,13 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, if (symbol_eq(args[1], ctx->vaName) && !ctx->vars[ctx->vaName].isAssigned) { JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_tuplelen"); return emit_n_varargs(ctx); } else { Value *arg1 = emit_expr(args[1], ctx); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_tuplelen"); return emit_tuplelen(arg1,aty); } } @@ -1578,6 +1660,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, ConstantInt::get(T_size, ctx->nReqArgs)), nva); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_apply"); return r; } else if (f->fptr == &jl_f_tupleref && nargs==2) { @@ -1591,6 +1674,9 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, idx = emit_bounds_check(idx, valen, ctx); idx = builder.CreateAdd(idx, ConstantInt::get(T_size, ctx->nReqArgs)); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_tupleref"); + //return builder. + // CreateLoad(builder.CreateGEP(ctx->argArray,idx),false); return tbaa_decorate(tbaa_user, builder. CreateLoad(builder.CreateGEP(ctx->argArray,idx),false)); } @@ -1603,13 +1689,16 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, if (idx > 0 && (idx < tlen || (idx == tlen && !isseqt))) { // known to be in bounds JL_GC_POP(); - return emit_tupleref(arg1,ConstantInt::get(T_size,idx),tty,ctx); + Value* value = emit_tupleref(arg1,ConstantInt::get(T_size,idx),tty,ctx); + if (in_j2c) j2c_tupleref(args[1], args[2], ctx, expr); + return value; } if (idx==0 || (!isseqt && idx > tlen)) { builder.CreateCall2(prepare_call(jlthrow_line_func), tbaa_decorate(tbaa_const, builder.CreateLoad(prepare_global(jlboundserr_var))), ConstantInt::get(T_int32, ctx->lineno)); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_tupleref"); return V_null; } } @@ -1618,12 +1707,14 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, emit_unboxed(args[2], ctx), ity); emit_bounds_check(idx, tlen, ctx); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_tupleref"); return emit_tupleref(arg1,idx,tty,ctx); } } else if (f->fptr == &jl_f_tuple) { if (nargs == 0) { JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_tuple"); return literal_pointer_val((jl_value_t*)jl_null); } size_t i; @@ -1632,8 +1723,9 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, if (!(jl_isbits(it) && jl_is_leaf_type(it))) break; } + rt1 = expr_type(expr, ctx); if (i >= nargs && ctx->linfo->specTypes) { - rt1 = expr_type(expr, ctx); +// rt1 = expr_type(expr, ctx); if (jl_is_tuple(rt1) && nargs == jl_tuple_len(rt1)) { for(i=0; i < nargs; i++) { // paranoia: make sure the inferred tuple type matches what @@ -1642,6 +1734,9 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, break; } if (i >= nargs) { + // In case the left side is a temporary made by us, and its type has not be created before + if (in_j2c) create_c_type(rt1); + Type *ty = julia_type_to_llvm(rt1); Value *tpl = NULL; if (ty != T_void) @@ -1659,6 +1754,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, tpl = emit_tupleset(tpl,ConstantInt::get(T_size,i+1),elt,rt1,ctx); } JL_GC_POP(); + if(in_j2c) j2c_tuple(expr, nargs, ctx, rt1); if (ty->isEmptyTy()) return mark_julia_type(tpl, rt1); return tpl; @@ -1724,6 +1820,8 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, } ctx->argDepth = last_depth; JL_GC_POP(); + if(in_j2c) j2c_tuple(expr, nargs, ctx, rt1); +// J2C_UNIMPL("emit known call"); return tup; } else if (f->fptr == &jl_f_throw && nargs==1) { @@ -1731,6 +1829,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, JL_GC_POP(); builder.CreateCall2(prepare_call(jlthrow_line_func), arg1, ConstantInt::get(T_int32, ctx->lineno)); + if (in_j2c) j2c_throw(ctx, expr); return V_null; } else if (f->fptr == &jl_f_arraylen && nargs==1) { @@ -1739,7 +1838,9 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, // todo: also allow e.g. Union of several array types Value *arg1 = emit_expr(args[1], ctx); JL_GC_POP(); - return emit_arraylen(arg1, args[1], ctx); + Value *val = emit_arraylen(arg1, args[1], ctx); + if (in_j2c) j2c_arraylen(args[1], ctx, expr); + return val; } } else if (f->fptr == &jl_f_arraysize && nargs==2) { @@ -1754,10 +1855,13 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, uint32_t idx = (uint32_t)jl_unbox_long(args[2]); if (idx > 0 && idx <= ndims) { JL_GC_POP(); - return emit_arraysize(ary, args[1], idx, ctx); + Value *val = emit_arraysize(ary, args[1], idx, ctx); + if (in_j2c) j2c_arraysize(args[1], idx, ctx, expr); + return val; } else if (idx > ndims) { JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_arraysize idx > ndims"); return ConstantInt::get(T_size, 1); } } @@ -1786,12 +1890,13 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, result->addIncoming(v_one, outBB); result->addIncoming(v_sz, inBB); JL_GC_POP(); + J2C_UNIMPL("emit known call"); return result; } } } } - else if (f->fptr == &jl_f_arrayref && nargs>=2) { + else if ((f->fptr == &jl_f_arrayref || f->fptr == &jl_f_unsafe_arrayref) && nargs>=2) { jl_value_t *aty = expr_type(args[1], ctx); rt1 = aty; bool indexes_ok = true; for (size_t i=2; i <= nargs; i++) { @@ -1814,14 +1919,17 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, ((jl_datatype_t*)ety)->size == 0) { jl_new_struct_uninit((jl_datatype_t*)ety); assert(jl_is_datatype(ety)); + J2C_UNIMPL("emit known call: jl_f_arrayref size 0"); return literal_pointer_val(((jl_datatype_t*)ety)->instance); } - return typed_load(emit_arrayptr(ary, args[1], ctx), idx, ety, ctx); + Value * val = typed_load(emit_arrayptr(ary, args[1], ctx), idx, ety, ctx); + if (in_j2c) j2c_arrayref(args[1], nd, &args[2], nargs-1, ctx, expr, f->fptr == &jl_f_unsafe_arrayref); + return val; } } } } - else if (f->fptr == &jl_f_arrayset && nargs>=3) { + else if ((f->fptr == &jl_f_arrayset || f->fptr == &jl_f_unsafe_arrayset) && nargs>=3) { jl_value_t *aty = expr_type(args[1], ctx); rt1 = aty; jl_value_t *vty = expr_type(args[2], ctx); rt2 = vty; bool indexes_ok = true; @@ -1852,6 +1960,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, ety, ctx); } JL_GC_POP(); + if (in_j2c) j2c_arrayset(args[1], args[2], nd, &args[3], nargs-2, ctx, expr, f->fptr == &jl_f_unsafe_arrayset); return ary; } } @@ -1860,7 +1969,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, else if (f->fptr == &jl_f_get_field && nargs==2) { if (jl_is_quotenode(args[2]) && jl_is_symbol(jl_fieldref(args[2],0))) { Value *fld = emit_getfield(args[1], - (jl_sym_t*)jl_fieldref(args[2],0), ctx); + (jl_sym_t*)jl_fieldref(args[2],0), ctx, expr); JL_GC_POP(); return fld; } @@ -1875,8 +1984,9 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, if (idx < nfields) { Value *fld = emit_getfield(args[1], (jl_sym_t*)jl_tupleref(stt->names, idx), - ctx); + ctx, expr); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_getfield 2"); return fld; } } @@ -1896,6 +2006,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, builder.CreateAdd(idx,ConstantInt::get(T_size,1))))); null_pointer_check(fld, ctx); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_getfield 3"); return fld; } else if (is_tupletype_homogeneous(stt->types)) { @@ -1904,12 +2015,14 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, idx = emit_bounds_check(idx, ConstantInt::get(T_size, nfields), ctx); Value *ptr = data_pointer(strct); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_getfield"); return typed_load(ptr, idx, jt, ctx); } else { idx = builder.CreateSub(idx, ConstantInt::get(T_size, 1)); Value *fld = builder.CreateCall2(prepare_call(jlgetnthfieldchecked_func), strct, idx); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_getfield 4"); return fld; } } @@ -1931,6 +2044,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, Intrinsic::stackrestore), stacksave); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_getfield 5"); return fld; } } @@ -1957,6 +2071,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, rhs = emit_unboxed(args[3], ctx); emit_setfield(sty, strct, idx, rhs, ctx); JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_set_field"); return rhs; } } @@ -1976,6 +2091,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, jl_tuple_len(ctx->sp)/2); if (jl_is_leaf_type(ty)) { JL_GC_POP(); + J2C_UNIMPL("emit known call: jl_f_instantiate_type"); return literal_pointer_val(ty); } } @@ -1986,7 +2102,7 @@ static Value *emit_known_call(jl_value_t *ff, jl_value_t **args, size_t nargs, } static Value *emit_jlcall(Value *theFptr, Value *theF, jl_value_t **args, - size_t nargs, jl_codectx_t *ctx) + size_t nargs, jl_codectx_t *ctx, jl_value_t *expr) { // emit arguments int argStart = ctx->argDepth; @@ -2008,9 +2124,14 @@ static Value *emit_jlcall(Value *theFptr, Value *theF, jl_value_t **args, Value *result = builder.CreateCall3(prepare_call(theFptr), theF, myargs, ConstantInt::get(T_int32,nargs)); ctx->argDepth = argStart; + + if (in_j2c) j2c_jlcall(ctx, expr); + return result; } +extern char * c_identifier(jl_sym_t *s); + static Value *emit_call(jl_value_t **args, size_t arglen, jl_codectx_t *ctx, jl_value_t *expr) { @@ -2032,7 +2153,7 @@ static Value *emit_call(jl_value_t **args, size_t arglen, jl_codectx_t *ctx, hdtype = expr_type(a0, ctx); if (theFptr == NULL) { specialized = false; - Value *theFunc = emit_expr(args[0], ctx); + Value *theFunc = emit_expr(a0, ctx); if (theFunc->getType() != jl_pvalue_llvmt || jl_is_tuple(hdtype)) { // we know it's not a function emit_type_error(theFunc, (jl_value_t*)jl_function_type, "apply", ctx); @@ -2095,10 +2216,16 @@ static Value *emit_call(jl_value_t **args, size_t arglen, jl_codectx_t *ctx, } assert(idx == nfargs); result = builder.CreateCall(prepare_call(cf), ArrayRef<Value*>(&argvals[0],nfargs)); - result = mark_julia_type(result, jl_ast_rettype(f->linfo, f->linfo->ast)); + if (result->getType() == T_void) { + result = literal_pointer_val((jl_value_t*)jl_nothing); + } + else { + result = mark_julia_type(result, jl_ast_rettype(f->linfo, f->linfo->ast)); + } + if (in_j2c) j2c_known_call(f, args, nargs, ctx, expr); } else { - result = emit_jlcall(theFptr, theF, &args[1], nargs, ctx); + result = emit_jlcall(theFptr, theF, &args[1], nargs, ctx, expr); } ctx->argDepth = last_depth; @@ -2146,7 +2273,7 @@ static Value *global_binding_pointer(jl_module_t *m, jl_sym_t *s, } // yields a jl_value_t** giving the binding location of a variable -static Value *var_binding_pointer(jl_sym_t *s, jl_binding_t **pbnd, +Value *var_binding_pointer(jl_sym_t *s, jl_binding_t **pbnd, bool assign, jl_codectx_t *ctx) { if (jl_is_symbolnode(s)) @@ -2263,8 +2390,20 @@ static Value *emit_var(jl_sym_t *sym, jl_value_t *ty, jl_codectx_t *ctx, bool is return emit_checked_var(bp, sym, ctx); } -static void emit_assignment(jl_value_t *l, jl_value_t *r, jl_codectx_t *ctx) -{ +static void emit_assignment(jl_value_t *l, jl_value_t *r, jl_codectx_t *ctx, jl_value_t *ast_node) +{ +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + if (in_j2c) { + static int count=0; + count++; + JL_PRINTF(JL_STDOUT, "### emit assignment %d:\n", count); + jl_static_show(JL_STDOUT, ast_node); + JL_PRINTF(JL_STDOUT, "\n"); + } + } +#endif + jl_sym_t *s = NULL; if (jl_is_symbol(l)) s = (jl_sym_t*)l; @@ -2287,7 +2426,7 @@ static void emit_assignment(jl_value_t *l, jl_value_t *r, jl_codectx_t *ctx) if ((jl_is_symbol(r) || jl_is_symbolnode(r)) && rt == jl_bottom_type) { // sometimes x = y::None occurs if (builder.GetInsertBlock()->getTerminator() != NULL) - return; + goto end_emit_assignment; } if (bp != NULL) { Type *vt = bp->getType(); @@ -2328,6 +2467,9 @@ static void emit_assignment(jl_value_t *l, jl_value_t *r, jl_codectx_t *ctx) vi.SAvalue = rval; } } + +end_emit_assignment: + if (in_j2c) j2c_assignment(l, r, ctx, ast_node); } // --- convert expression to code --- @@ -2352,6 +2494,11 @@ static Value *emit_condition(jl_value_t *cond, const std::string &msg, jl_codect static Value *emit_expr(jl_value_t *expr, jl_codectx_t *ctx, bool isboxed, bool valuepos) { +#ifdef J2C_VERBOSE + static int count=0; + print_in_out pio("**** emit expr ", count, expr); +#endif + if (jl_is_symbol(expr)) { if (!valuepos) return NULL; return emit_var((jl_sym_t*)expr, (jl_value_t*)jl_undef_type, ctx, isboxed); @@ -2369,11 +2516,13 @@ static Value *emit_expr(jl_value_t *expr, jl_codectx_t *ctx, bool isboxed, } ctx->f->getBasicBlockList().push_back(bb); builder.SetInsertPoint(bb); + if (in_j2c) j2c_labelnode(expr, ctx); return NULL; } else if (jl_is_linenode(expr)) { if (valuepos) jl_error("Linenode in value position"); + if (in_j2c) j2c_linenode(expr, ctx); return NULL; } else if (jl_is_quotenode(expr)) { @@ -2396,11 +2545,12 @@ static Value *emit_expr(jl_value_t *expr, jl_codectx_t *ctx, bool isboxed, "br", ctx->f); builder.SetInsertPoint(after); } + if (in_j2c) j2c_goto(expr, ctx); return NULL; } else if (jl_is_getfieldnode(expr)) { return emit_getfield(jl_fieldref(expr,0), - (jl_sym_t*)jl_fieldref(expr,1), ctx); + (jl_sym_t*)jl_fieldref(expr,1), ctx, expr); } else if (jl_is_topnode(expr)) { jl_sym_t *var = (jl_sym_t*)jl_fieldref(expr,0); @@ -2479,14 +2629,16 @@ static Value *emit_expr(jl_value_t *expr, jl_codectx_t *ctx, bool isboxed, builder.CreateCondBr(isfalse, ifnot, ifso); } builder.SetInsertPoint(ifso); + + if (in_j2c) j2c_gotoifnot(cond, labelname, ctx, expr); } - else if (head == call_sym || head == call1_sym) { + else if (head == call_sym || head == call1_sym) { return emit_call(args, jl_array_dim0(ex->args), ctx, (jl_value_t*)ex); } else if (head == assign_sym) { - emit_assignment(args[0], args[1], ctx); + emit_assignment(args[0], args[1], ctx, (jl_value_t*)ex); if (valuepos) { return literal_pointer_val((jl_value_t*)jl_nothing); } @@ -2595,8 +2747,10 @@ static Value *emit_expr(jl_value_t *expr, jl_codectx_t *ctx, bool isboxed, CreateInsertValue(strct, fval, ArrayRef<unsigned>(&idx,1)); idx++; } + if (in_j2c) j2c_new_sym(ty, na, args, ctx, expr); return mark_julia_type(strct,ty); } + J2C_UNIMPL("new_sym"); Value *f1 = NULL; size_t j = 0; int fieldStart = ctx->argDepth; @@ -2650,12 +2804,14 @@ static Value *emit_expr(jl_value_t *expr, jl_codectx_t *ctx, bool isboxed, return strct; } else { + J2C_UNIMPL("new_sym"); // 0 fields, singleton return literal_pointer_val(jl_new_struct_uninit((jl_datatype_t*)ty)); } } + J2C_UNIMPL("new_sym"); Value *typ = emit_expr(args[0], ctx); - return emit_jlcall(jlnew_func, typ, &args[1], nargs-1, ctx); + return emit_jlcall(jlnew_func, typ, &args[1], nargs-1, ctx, expr); } else if (head == exc_sym) { return builder.CreateLoad(prepare_global(jlexc_var), true); @@ -2747,7 +2903,7 @@ static Value *emit_expr(jl_value_t *expr, jl_codectx_t *ctx, bool isboxed, return valuepos ? literal_pointer_val(jl_nothing) : NULL; } // some expression types are metadata and can be ignored - if (valuepos || !(head == line_sym || head == type_goto_sym)) { + if (valuepos && !(head == line_sym || head == type_goto_sym)) { if (head == abstracttype_sym || head == compositetype_sym || head == bitstype_sym) { jl_errorf("type definition not allowed inside a local scope"); @@ -2760,6 +2916,10 @@ static Value *emit_expr(jl_value_t *expr, jl_codectx_t *ctx, bool isboxed, head->name, ctx->linfo->name->name); } } + + if (in_j2c) { + if (head == line_sym) j2c_linesym(expr, ctx); + } } return NULL; } @@ -3013,6 +3173,8 @@ static Function *gen_jlcall_wrapper(jl_lambda_info_t *lam, jl_expr_t *ast, Funct return w; } +bool should_j2c(const char* func_name); + // cstyle = compile with c-callable signature, not jlcall static Function *emit_function(jl_lambda_info_t *lam, bool cstyle) { @@ -3042,7 +3204,27 @@ static Function *emit_function(jl_lambda_info_t *lam, bool cstyle) ctx.vaName = NULL; ctx.vaStack = false; ctx.boundsCheck.push_back(true); - + + // Prepare for Julia to C conversion. + bool prev_in_j2c = in_j2c; + bool should_j2c_cur_func = J2C_FLAG_J2C(lam->j2cflag) || should_j2c(ctx.funcName.c_str()); + in_j2c = should_j2c_cur_func; + bool j2c_root_func = !in_j2c_overall && in_j2c; // first time we turn on j2c + if (j2c_root_func) { + in_j2c_overall = true; + } + +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + if (should_j2c_cur_func) + { + JL_PRINTF(JL_STDOUT, "******* emitfunc %s****\n", ctx.funcName.c_str()); + jl_static_show(JL_STDOUT, (jl_value_t*)ast); + JL_PRINTF(JL_STDOUT, "\n"); + } + } +#endif + // step 2. process var-info lists to see what vars are captured, need boxing jl_array_t *largs = jl_lam_args(ast); size_t largslen = jl_array_dim0(largs); @@ -3575,6 +3757,40 @@ static Function *emit_function(jl_lambda_info_t *lam, bool cstyle) } } + ast_node_result_t* prev_func_result = cur_func_result; + if (should_j2c_cur_func) { + cur_func_result = get_ast_node_result((jl_value_t *)ast, &ctx); + cur_func_result->is_root_func = j2c_root_func; + j2c_create_type_table(lam, ast); + j2c_create_func_signature(lam, ast, &ctx); + functions.push_back(cur_func_result); + + std::set<std::string> private_vars; + + jl_array_t *vinfos = jl_lam_vinfo(ast); + size_t vinfoslen = jl_array_dim0(vinfos); + + if(private_vars.size()) { + std::set<std::string>::iterator iter = private_vars.begin(); + + std::stringstream ss; + ss << "private(" << *iter; + + for(++iter; + iter != private_vars.end(); + ++iter) { + ss << "," << *iter; + } + + ss << ")"; + + cur_func_result->private_vars = ss.str(); + } else { + cur_func_result->private_vars = ""; + } + //printf("private_vars = %s, cur_func_result = %p\n", cur_func_result->private_vars.c_str(), cur_func_result); + } + // step 15. compile body statements bool prevlabel = false; for(i=0; i < stmtslen; i++) { @@ -3596,7 +3812,14 @@ static Function *emit_function(jl_lambda_info_t *lam, bool cstyle) ctx.lineno = lno; } if (jl_is_labelnode(stmt)) { - if (prevlabel) continue; + if (prevlabel) { + if (should_j2c_cur_func) { + ast_node_result_t *stmt_result = get_ast_node_result(stmt, &ctx); + CONNECT_PARENT_CHILD(cur_func_result, stmt_result); + j2c_labelnode(stmt, &ctx); + } + continue; + } prevlabel = true; } else { @@ -3633,10 +3856,33 @@ static Function *emit_function(jl_lambda_info_t *lam, bool cstyle) BasicBlock::Create(getGlobalContext(), "ret", ctx.f); builder.SetInsertPoint(bb); } + if (should_j2c_cur_func) j2c_return(stmt, &ctx, j2c_root_func); } else { (void)emit_expr(stmt, &ctx, false, false); } + + if (should_j2c_cur_func) { + ast_node_result_t *stmt_result = get_ast_node_result(stmt, &ctx); + CONNECT_PARENT_CHILD(cur_func_result, stmt_result); + + // Due to min temps, some nodes like calls do not have assignment as its result + if (jl_is_expr(stmt) && stmt_result->epilog == NULL) { + if (((jl_expr_t*)stmt)->head == call_sym || ((jl_expr_t*)stmt)->head == call1_sym) { + NEW_C_CODE_3(stmt_result->epilog, "%s\n;", result_variable_string(stmt_result)); + } + } + +#if 0 + JL_PRINTF(JL_STDOUT, "======== statement ============\n"); + jl_static_show(JL_STDOUT, stmt); + JL_PRINTF(JL_STDOUT, "\n\n"); + FILE* fs = fopen("temporary1", "a"); + fprintf(fs, "\n$$$$$ statement reuslt:\n"); + dump_ast_node(stmt_result, fs, NULL); + fclose(fs); +#endif + } } // sometimes we have dangling labels after the end if (builder.GetInsertBlock()->getTerminator() == NULL) { @@ -3658,6 +3904,17 @@ static Function *emit_function(jl_lambda_info_t *lam, bool cstyle) if (debug_enabled) ctx.dbuilder->finalize(); + if (should_j2c_cur_func) { + j2c_declare_local_and_tmp_vars(ast, lam, &ctx); + } + + cur_func_result = prev_func_result; + in_j2c = prev_in_j2c; + if (j2c_root_func) { + in_j2c_overall = false; + j2c_dump_all_funcs(); + } + JL_GC_POP(); return f; } @@ -4178,6 +4435,55 @@ static void init_julia_llvm_env(Module *m) FPM->doInitialization(); } +// The user experience of PSE should be: user fills in a form in GUI, which stores as a configuration file; +// then the file is read and the parameters are retrieved. + +// Remember all the key function names in the configuration. +void Tokenize(const std::string& str, std::vector<std::string>& tokens, const std::string& delimiters) { + // Skip delimiters at beginning. + std::string::size_type lastPos = str.find_first_not_of(delimiters, 0); + // Find first "non-delimiter". + std::string::size_type pos = str.find_first_of(delimiters, lastPos); + + while (std::string::npos != pos || std::string::npos != lastPos) { + // Found a token, add it to the vector. + tokens.push_back(str.substr(lastPos, pos - lastPos)); + // Skip delimiters. Note the "not_of" + lastPos = str.find_first_not_of(delimiters, pos); + // Find next "non-delimiter" + pos = str.find_first_of(delimiters, lastPos); + } +} + +static void jl_init_j2c() +{ + char path[300], *home; + home = getenv("JULIA_ROOT"); +} + +char *no_j2c_funcs[] = { + "promote_shape", "broadcast!", "broadcast!_function", "ht_keyindex", "gen_broadcast_body", "getindex", + "display_error", "broadcast_shape", "fill!", "print_to_string", "ht_keyindex2", "rehash", "resize!", + "Dict", "_setindex!", "gen_broadcast_function", + NULL +}; + +bool should_j2c(const char* func_name) +{ + // If we are in j2c overall, then unless this function is specially handled, we should + // just translate it. + if (in_j2c_overall) { + for (size_t i = 0; no_j2c_funcs[i] != NULL; i++) { + if (strcmp(no_j2c_funcs[i], func_name) == 0) { + return false; + } + } + } + + return in_j2c_overall; +} + + extern "C" void jl_init_codegen(void) { #ifdef DEBUG @@ -4327,6 +4633,9 @@ extern "C" void jl_init_codegen(void) (void*)&restore_arg_area_loc); typeToTypeId = jl_alloc_cell_1d(16); + jl_gc_preserve((jl_value_t*)typeToTypeId); + + jl_init_j2c(); } /* diff --git a/src/dump.c b/src/dump.c index f3f1d19571727..c229eb748ff10 100644 --- a/src/dump.c +++ b/src/dump.c @@ -520,6 +520,7 @@ static void jl_serialize_value_(ios_t *s, jl_value_t *v) jl_serialize_value(s, (jl_value_t*)li->name); jl_serialize_value(s, (jl_value_t*)li->specTypes); jl_serialize_value(s, (jl_value_t*)li->specializations); + write_int32(s, li->j2cflag); write_int8(s, li->inferred); jl_serialize_value(s, (jl_value_t*)li->file); write_int32(s, li->line); @@ -817,6 +818,7 @@ static jl_value_t *jl_deserialize_value_internal(ios_t *s) li->name = (jl_sym_t*)jl_deserialize_value(s); li->specTypes = (jl_tuple_t*)jl_deserialize_value(s); li->specializations = (jl_array_t*)jl_deserialize_value(s); + li->j2cflag = read_int32(s); li->inferred = read_int8(s); li->file = (jl_sym_t*)jl_deserialize_value(s); li->line = read_int32(s); @@ -1234,6 +1236,7 @@ void jl_init_serializer(void) jl_symbol("getfield"), jl_symbol("setfield!"), jl_symbol("tupleref"), jl_symbol("tuplelen"), jl_symbol("apply_type"), tuple_sym, + jl_symbol("unsafe_arrayset"), jl_symbol("unsafe_arrayref"), jl_box_int32(0), jl_box_int32(1), jl_box_int32(2), jl_box_int32(3), jl_box_int32(4), jl_box_int32(5), @@ -1336,7 +1339,8 @@ void jl_init_serializer(void) jl_f_invoke, jl_apply_generic, jl_unprotect_stack, jl_f_task, jl_f_yieldto, jl_f_ctor_trampoline, - jl_f_new_module, + jl_f_new_module, jl_f_unsafe_arrayref, + jl_f_unsafe_arrayset, NULL }; i=2; while (fptrs[i-2] != NULL) { diff --git a/src/gf.c b/src/gf.c index 1481120e2bd56..edcb1b62e95ba 100644 --- a/src/gf.c +++ b/src/gf.c @@ -300,6 +300,7 @@ jl_lambda_info_t *jl_add_static_parameters(jl_lambda_info_t *l, jl_tuple_t *sp) nli->file = l->file; nli->line = l->line; nli->def = l->def; + nli->j2cflag = l->j2cflag; JL_GC_POP(); return nli; } diff --git a/src/intrinsics.cpp b/src/intrinsics.cpp index a13a996a69cc7..3bdc5c994f409 100644 --- a/src/intrinsics.cpp +++ b/src/intrinsics.cpp @@ -766,20 +766,21 @@ static Value *emit_smod(Value *x, Value *den, jl_codectx_t *ctx) case intr: if (nargs!=n) jl_error(#intr": wrong number of arguments"); static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, - jl_codectx_t *ctx) + jl_codectx_t *ctx, jl_value_t* ast_node) { switch (f) { - case ccall: return emit_ccall(args, nargs, ctx); + case ccall: return emit_ccall(args, nargs, ctx, ast_node); case cglobal: return emit_cglobal(args, nargs, ctx); - HANDLE(box,2) return generic_box(args[1], args[2], ctx); - HANDLE(unbox,2) return generic_unbox(args[1], args[2], ctx); - HANDLE(trunc_int,2) return generic_trunc(args[1], args[2], ctx); - HANDLE(sext_int,2) return generic_sext(args[1], args[2], ctx); - HANDLE(zext_int,2) return generic_zext(args[1], args[2], ctx); - HANDLE(pointerref,2) return emit_pointerref(args[1], args[2], ctx); - HANDLE(pointerset,3) return emit_pointerset(args[1], args[2], args[3], ctx); + HANDLE(box,2) { Value* val = generic_box(args[1], args[2], ctx); if (in_j2c) j2c_box_unbox(ast_node, args[1], args[2], ctx); return val; } + HANDLE(unbox,2) { Value* val = generic_unbox(args[1], args[2], ctx); if (in_j2c) j2c_box_unbox(ast_node, args[1], args[2], ctx); return val; } + HANDLE(trunc_int,2) J2C_UNIMPL_INTRINSIC(f); return generic_trunc(args[1], args[2], ctx); + HANDLE(sext_int,2) J2C_UNIMPL_INTRINSIC(f); return generic_sext(args[1], args[2], ctx); + HANDLE(zext_int,2) J2C_UNIMPL_INTRINSIC(f); return generic_zext(args[1], args[2], ctx); + HANDLE(pointerref,2) J2C_UNIMPL_INTRINSIC(f); return emit_pointerref(args[1], args[2], ctx); + HANDLE(pointerset,3) J2C_UNIMPL_INTRINSIC(f); return emit_pointerset(args[1], args[2], args[3], ctx); HANDLE(pointertoref,1) { + J2C_UNIMPL_INTRINSIC(f); Value *p = auto_unbox(args[1], ctx); if (p->getType()->isIntegerTy()) { return builder.CreateIntToPtr(p, jl_pvalue_llvmt); @@ -787,17 +788,19 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, return builder.CreateBitCast(p, jl_pvalue_llvmt); } HANDLE(checked_fptosi,2) { + J2C_UNIMPL_INTRINSIC(f); Value *x = FP(auto_unbox(args[2], ctx)); return emit_checked_fptosi(args[1], x, ctx); } HANDLE(checked_fptoui,2) { + J2C_UNIMPL_INTRINSIC(f); Value *x = FP(auto_unbox(args[2], ctx)); return emit_checked_fptoui(args[1], x, ctx); } - HANDLE(uitofp,2) return builder.CreateUIToFP(JL_INT(auto_unbox(args[2],ctx)), FTnbits(try_to_determine_bitstype_nbits(args[1],ctx))); - HANDLE(sitofp,2) return builder.CreateSIToFP(JL_INT(auto_unbox(args[2],ctx)), FTnbits(try_to_determine_bitstype_nbits(args[1],ctx))); - HANDLE(fptrunc,2) return builder.CreateFPTrunc(FP(auto_unbox(args[2],ctx)), FTnbits(try_to_determine_bitstype_nbits(args[1],ctx))); - HANDLE(fpext,2) { + HANDLE(uitofp,2) J2C_UNIMPL_INTRINSIC(f); return builder.CreateUIToFP(JL_INT(auto_unbox(args[2],ctx)), FTnbits(try_to_determine_bitstype_nbits(args[1],ctx))); + HANDLE(sitofp,2) { Value *val = builder.CreateSIToFP(JL_INT(auto_unbox(args[2],ctx)), FTnbits(try_to_determine_bitstype_nbits(args[1],ctx))); if (in_j2c) j2c_sitofp(ast_node, args[1], args[2], ctx, TC_INT); return val; } + HANDLE(fptrunc,2) {Value *val = builder.CreateFPTrunc(FP(auto_unbox(args[2],ctx)), FTnbits(try_to_determine_bitstype_nbits(args[1],ctx))); if (in_j2c) j2c_fptrunc(ast_node, args[1], args[2], ctx, TC_FP); return val; } + HANDLE(fpext,2) { // when extending a float32 to a float64, we need to force // rounding to single precision first. the reason is that it's // fine to keep working in extended precision as long as it's @@ -806,8 +809,10 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, // rounding first instead of carrying around incorrect low bits. Value *x = auto_unbox(args[2],ctx); builder.CreateStore(FP(x), builder.CreateBitCast(prepare_global(jlfloattemp_var),FT(x->getType())->getPointerTo()), true); - return builder.CreateFPExt(builder.CreateLoad(builder.CreateBitCast(prepare_global(jlfloattemp_var),FT(x->getType())->getPointerTo()), true), + Value * val = builder.CreateFPExt(builder.CreateLoad(builder.CreateBitCast(jlfloattemp_var,FT(x->getType())->getPointerTo()), true), FTnbits(try_to_determine_bitstype_nbits(args[1],ctx))); + if (in_j2c) j2c_fpext(ast_node, args[1], args[2], ctx, TC_FP); + return val; } HANDLE(select_value,3) { Value *isfalse = emit_condition(args[1], "select_value", ctx); @@ -838,6 +843,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, boxed(emit_expr(args[2],ctx,false), ctx, expr_type(args[2],ctx))); } ctx->argDepth = argStart; + if (in_j2c) j2c_select_value(ast_node, args[1], args[2], args[3], ctx); return ifelse_result; } default: ; @@ -857,11 +863,12 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, Value *den; Value *typemin; switch (f) { - HANDLE(neg_int,1) return builder.CreateSub(ConstantInt::get(t, 0), JL_INT(x)); - HANDLE(add_int,2) return builder.CreateAdd(JL_INT(x), JL_INT(y)); - HANDLE(sub_int,2) return builder.CreateSub(JL_INT(x), JL_INT(y)); - HANDLE(mul_int,2) return builder.CreateMul(JL_INT(x), JL_INT(y)); - HANDLE(sdiv_int,2) + HANDLE(neg_int,1) { Value *val = builder.CreateSub(ConstantInt::get(t, 0), JL_INT(x)); if (in_j2c) j2c_unary_scalar_op(ast_node, "-", args[1], ctx, TC_INT); return val; } + HANDLE(add_int,2) { Value *val = builder.CreateAdd(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "+", args[2], ctx, TC_INT); return val; } + HANDLE(sub_int,2) { Value *val = builder.CreateSub(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "-", args[2], ctx, TC_INT); return val; } + HANDLE(mul_int,2) { Value *val = builder.CreateMul(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "*", args[2], ctx, TC_INT); return val; } + HANDLE(sdiv_int,2) + J2C_UNIMPL_INTRINSIC(f); den = JL_INT(y); t = den->getType(); x = JL_INT(x); @@ -880,6 +887,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, return builder.CreateSDiv(x, den); HANDLE(udiv_int,2) + J2C_UNIMPL_INTRINSIC(f); den = JL_INT(y); t = den->getType(); raise_exception_unless(builder.CreateICmpNE(den, ConstantInt::get(t,0)), @@ -887,9 +895,11 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, return builder.CreateUDiv(JL_INT(x), den); HANDLE(srem_int,2) + J2C_UNIMPL_INTRINSIC(f); return emit_srem(JL_INT(x), JL_INT(y), ctx); HANDLE(urem_int,2) + J2C_UNIMPL_INTRINSIC(f); den = JL_INT(y); t = den->getType(); raise_exception_unless(builder.CreateICmpNE(den, ConstantInt::get(t,0)), @@ -897,14 +907,15 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, return builder.CreateURem(JL_INT(x), den); HANDLE(smod_int,2) + J2C_UNIMPL_INTRINSIC(f); return emit_smod(JL_INT(x), JL_INT(y), ctx); - HANDLE(neg_float,1) return builder.CreateFMul(ConstantFP::get(FT(t), -1.0), FP(x)); - HANDLE(add_float,2) return builder.CreateFAdd(FP(x), FP(y)); - HANDLE(sub_float,2) return builder.CreateFSub(FP(x), FP(y)); - HANDLE(mul_float,2) return builder.CreateFMul(FP(x), FP(y)); - HANDLE(div_float,2) return builder.CreateFDiv(FP(x), FP(y)); - HANDLE(rem_float,2) return builder.CreateFRem(FP(x), FP(y)); + HANDLE(neg_float,1) { Value *val = builder.CreateFMul(ConstantFP::get(FT(t), -1.0), FP(x)); if (in_j2c) j2c_unary_scalar_op(ast_node, "-", args[1], ctx, TC_FP); return val; } + HANDLE(add_float,2) { Value *val = builder.CreateFAdd(FP(x), FP(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "+", args[2], ctx, TC_FP); return val; } + HANDLE(sub_float,2) { Value *val = builder.CreateFSub(FP(x), FP(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "-", args[2], ctx, TC_FP); return val; } + HANDLE(mul_float,2) { Value *val = builder.CreateFMul(FP(x), FP(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "*", args[2], ctx, TC_FP); return val; } + HANDLE(div_float,2) { Value *val = builder.CreateFDiv(FP(x), FP(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "/", args[2], ctx, TC_FP); return val; } + HANDLE(rem_float,2) { Value *val = builder.CreateFRem(FP(x), FP(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "%", args[2], ctx, TC_FP); return val; } HANDLE(checked_sadd,2) HANDLE(checked_uadd,2) @@ -931,24 +942,35 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ix, iy); Value *obit = builder.CreateExtractValue(res, ArrayRef<unsigned>(1)); raise_exception_if(obit, prepare_global(jlovferr_var), ctx); - return builder.CreateExtractValue(res, ArrayRef<unsigned>(0)); + Value *val = builder.CreateExtractValue(res, ArrayRef<unsigned>(0)); + if (in_j2c) { + const char * intrinsic_name = (f==checked_sadd) ? "checked_sadd" : + (f==checked_uadd) ? "checked_uadd" : + (f==checked_ssub) ? "checked_ssub" : + (f==checked_usub) ? "checked_usub" : + (f==checked_smul) ? "checked_smul" : "checked_umul"; + j2c_checked_add_sub_mul(intrinsic_name, ast_node, args[1], args[2], ctx); + } + return val; } - HANDLE(eq_int,2) return builder.CreateICmpEQ(JL_INT(x), JL_INT(y)); - HANDLE(ne_int,2) return builder.CreateICmpNE(JL_INT(x), JL_INT(y)); - HANDLE(slt_int,2) return builder.CreateICmpSLT(JL_INT(x), JL_INT(y)); - HANDLE(ult_int,2) return builder.CreateICmpULT(JL_INT(x), JL_INT(y)); - HANDLE(sle_int,2) return builder.CreateICmpSLE(JL_INT(x), JL_INT(y)); - HANDLE(ule_int,2) return builder.CreateICmpULE(JL_INT(x), JL_INT(y)); - - HANDLE(eq_float,2) return builder.CreateFCmpOEQ(FP(x), FP(y)); - HANDLE(ne_float,2) return builder.CreateFCmpUNE(FP(x), FP(y)); - HANDLE(lt_float,2) return builder.CreateFCmpOLT(FP(x), FP(y)); - HANDLE(le_float,2) return builder.CreateFCmpOLE(FP(x), FP(y)); - - HANDLE(eqfsi64,2) return emit_eqfsi64(x, y); - HANDLE(eqfui64,2) return emit_eqfui64(x, y); + // TODO: check if we need to generate different statements for signed and unsigned same op + HANDLE(eq_int,2) { Value *val = builder.CreateICmpEQ(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "==", args[2], ctx, TC_INT); return val; } + HANDLE(ne_int,2) { Value *val = builder.CreateICmpNE(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "!=", args[2], ctx, TC_INT); return val; } + HANDLE(slt_int,2) { Value *val = builder.CreateICmpSLT(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "<", args[2], ctx, TC_INT); return val; } + HANDLE(ult_int,2) { Value *val = builder.CreateICmpULT(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "<", args[2], ctx, TC_INT); return val; } + HANDLE(sle_int,2) { Value *val = builder.CreateICmpSLE(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "<=", args[2], ctx, TC_INT); return val; } + HANDLE(ule_int,2) { Value *val = builder.CreateICmpULE(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "<=", args[2], ctx, TC_INT); return val; } + + HANDLE(eq_float,2) { Value *val = builder.CreateFCmpOEQ(FP(x), FP(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "==", args[2], ctx, TC_FP); return val; } + HANDLE(ne_float,2) { Value *val = builder.CreateFCmpUNE(FP(x), FP(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "==", args[2], ctx, TC_FP); return val; } + HANDLE(lt_float,2) { Value *val = builder.CreateFCmpOLT(FP(x), FP(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "<", args[2], ctx, TC_FP); return val; } + HANDLE(le_float,2) { Value *val = builder.CreateFCmpOLE(FP(x), FP(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "<=", args[2], ctx, TC_FP); return val; } + + HANDLE(eqfsi64,2) J2C_UNIMPL_INTRINSIC(f); return emit_eqfsi64(x, y); + HANDLE(eqfui64,2) J2C_UNIMPL_INTRINSIC(f); return emit_eqfui64(x, y); HANDLE(ltfsi64,2) { + J2C_UNIMPL_INTRINSIC(f); x = FP(x); fy = JL_INT(y); Value *ffy = builder.CreateSIToFP(fy, T_float64); @@ -965,6 +987,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ); } HANDLE(ltfui64,2) { + J2C_UNIMPL_INTRINSIC(f); x = FP(x); fy = JL_INT(y); Value *ffy = builder.CreateUIToFP(fy, T_float64); @@ -981,6 +1004,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ); } HANDLE(lefsi64,2) { + J2C_UNIMPL_INTRINSIC(f); x = FP(x); fy = JL_INT(y); Value *ffy = builder.CreateSIToFP(fy, T_float64); @@ -997,6 +1021,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ); } HANDLE(lefui64,2) { + J2C_UNIMPL_INTRINSIC(f); x = FP(x); fy = JL_INT(y); Value *ffy = builder.CreateUIToFP(fy, T_float64); @@ -1013,6 +1038,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ); } HANDLE(ltsif64,2) { + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); fy = FP(y); Value *fx = builder.CreateSIToFP(x, T_float64); @@ -1028,6 +1054,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ); } HANDLE(ltuif64,2) { + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); fy = FP(y); Value *fx = builder.CreateUIToFP(x, T_float64); @@ -1043,6 +1070,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ); } HANDLE(lesif64,2) { + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); fy = FP(y); Value *fx = builder.CreateSIToFP(x, T_float64); @@ -1058,6 +1086,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ); } HANDLE(leuif64,2) { + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); fy = FP(y); Value *fx = builder.CreateUIToFP(x, T_float64); @@ -1074,6 +1103,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, } HANDLE(fpiseq,2) { + J2C_UNIMPL_INTRINSIC(f); Value *xi = JL_INT(x); Value *yi = JL_INT(y); x = FP(x); @@ -1084,6 +1114,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, } HANDLE(fpislt,2) { + J2C_UNIMPL_INTRINSIC(f); Value *xi = JL_INT(x); Value *yi = JL_INT(y); x = FP(x); @@ -1109,11 +1140,12 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ); } - HANDLE(and_int,2) return builder.CreateAnd(JL_INT(x), JL_INT(y)); - HANDLE(or_int,2) return builder.CreateOr(JL_INT(x), JL_INT(y)); - HANDLE(xor_int,2) return builder.CreateXor(JL_INT(x), JL_INT(y)); - HANDLE(not_int,1) return builder.CreateXor(JL_INT(x), ConstantInt::get(t, -1, true)); + HANDLE(and_int,2) { Value *val = builder.CreateAnd(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "&", args[2], ctx, TC_INT); return val; } + HANDLE(or_int,2) { Value *val = builder.CreateOr(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "|", args[2], ctx, TC_INT); return val; } + HANDLE(xor_int,2) { Value *val = builder.CreateXor(JL_INT(x), JL_INT(y)); if (in_j2c) j2c_binary_scalar_op(ast_node, args[1], "^", args[2], ctx, TC_INT); return val; } + HANDLE(not_int,1) { Value *val = builder.CreateXor(JL_INT(x), ConstantInt::get(t, -1, true)); if (in_j2c) j2c_unary_scalar_op(ast_node, "not_int", args[1], ctx, TC_INT); return val; } HANDLE(shl_int,2) + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); y = JL_INT(y); return builder. CreateSelect(builder. @@ -1122,6 +1154,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ConstantInt::get(x->getType(),0), builder.CreateShl(x, uint_cnvt(t,y))); HANDLE(lshr_int,2) + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); y = JL_INT(y); return builder. CreateSelect(builder. @@ -1130,6 +1163,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ConstantInt::get(x->getType(),0), builder.CreateLShr(x, uint_cnvt(t,y))); HANDLE(ashr_int,2) + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); y = JL_INT(y); return builder. CreateSelect(builder. @@ -1139,28 +1173,33 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, x->getType()->getPrimitiveSizeInBits()-1)), builder.CreateAShr(x, uint_cnvt(t,y))); HANDLE(bswap_int,1) + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); return builder.CreateCall( Intrinsic::getDeclaration(jl_Module, Intrinsic::bswap, ArrayRef<Type*>(x->getType())), x); HANDLE(ctpop_int,1) + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); return builder.CreateCall( Intrinsic::getDeclaration(jl_Module, Intrinsic::ctpop, ArrayRef<Type*>(x->getType())), x); #if !defined(LLVM_VERSION_MAJOR) || (LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR == 0) HANDLE(ctlz_int,1) + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); return builder.CreateCall( Intrinsic::getDeclaration(jl_Module, Intrinsic::ctlz, ArrayRef<Type*>(x->getType())), x); HANDLE(cttz_int,1) + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); return builder.CreateCall( Intrinsic::getDeclaration(jl_Module, Intrinsic::cttz, ArrayRef<Type*>(x->getType())), x); #elif LLVM_VERSION_MAJOR==3 && LLVM_VERSION_MINOR >= 1 HANDLE(ctlz_int,1) { + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); Type *types[1] = {x->getType()}; return builder.CreateCall2( @@ -1168,6 +1207,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, ArrayRef<Type*>(types)), x, ConstantInt::get(T_int1,0)); } HANDLE(cttz_int,1) { + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); Type *types[1] = {x->getType()}; return builder.CreateCall2( @@ -1175,24 +1215,27 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, } #endif - HANDLE(fptoui,1) return builder.CreateFPToUI(FP(x), JL_INTT(x->getType())); - HANDLE(fptosi,1) return builder.CreateFPToSI(FP(x), JL_INTT(x->getType())); + HANDLE(fptoui,1) J2C_UNIMPL_INTRINSIC(f); return builder.CreateFPToUI(FP(x), JL_INTT(x->getType())); + HANDLE(fptosi,1) J2C_UNIMPL_INTRINSIC(f); return builder.CreateFPToSI(FP(x), JL_INTT(x->getType())); HANDLE(fpsiround,1) HANDLE(fpuiround,1) { + J2C_UNIMPL_INTRINSIC(f); return emit_iround(x, f == fpsiround, ctx); } - HANDLE(nan_dom_err,2) { + HANDLE(nan_dom_err,2) { // nan_dom_err(f, x) throw DomainError if isnan(f)&&!isnan(x) Value *f = FP(x); x = FP(y); raise_exception_unless(builder.CreateOr(builder.CreateFCmpORD(f,f), builder.CreateFCmpUNO(x,x)), prepare_global(jldomerr_var), ctx); + if (in_j2c) j2c_nan_dom_err(ast_node, args[1], args[2], ctx); return f; } HANDLE(abs_float,1) { + J2C_UNIMPL_INTRINSIC(f); x = FP(x); Type *intt = JL_INTT(x->getType()); Value *bits = builder.CreateBitCast(FP(x), intt); @@ -1203,6 +1246,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, } HANDLE(copysign_float,2) { + J2C_UNIMPL_INTRINSIC(f); x = FP(x); fy = FP(y); Type *intt = JL_INTT(x->getType()); @@ -1222,6 +1266,7 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, } HANDLE(flipsign_int,2) { + J2C_UNIMPL_INTRINSIC(f); x = JL_INT(x); fy = JL_INT(y); Type *intt = x->getType(); @@ -1240,15 +1285,18 @@ static Value *emit_intrinsic(intrinsic f, jl_value_t **args, size_t nargs, return builder.CreateXor(builder.CreateAdd(x,tmp),tmp); } HANDLE(jl_alloca,1) { + J2C_UNIMPL_INTRINSIC(f); return builder.CreateAlloca(IntegerType::get(jl_LLVMContext, 8),JL_INT(x)); } HANDLE(sqrt_llvm,1) { x = FP(x); raise_exception_unless(builder.CreateFCmpUGE(x, ConstantFP::get(x->getType(),0.0)), prepare_global(jldomerr_var), ctx); - return builder.CreateCall(Intrinsic::getDeclaration(jl_Module, Intrinsic::sqrt, + Value *val = builder.CreateCall(Intrinsic::getDeclaration(jl_Module, Intrinsic::sqrt, ArrayRef<Type*>(x->getType())), x); + if (in_j2c) j2c_unary_scalar_op(ast_node, "sqrt", args[1], ctx, TC_FP); + return val; } HANDLE(powi_llvm,2) { x = FP(x); diff --git a/src/j2c-calls.cpp b/src/j2c-calls.cpp new file mode 100644 index 0000000000000..8a1cd35ea52fb --- /dev/null +++ b/src/j2c-calls.cpp @@ -0,0 +1,192 @@ +static char* for_loops_begin(ast_node_result_t* result, size_t from_level, size_t to_level, jl_codectx_t *ctx, bool generate_omp = true) +{ + assert(from_level <= to_level); + + // You must print something to the code buffer, even an empty string, since the caller + // expects this behavior, and might have ajdusted c_code_end to point to '\0' in order + // to connect with the new string here. + char*start; + NEW_C_CODE_2(start, ""); + if (from_level == to_level) { + return start; + } + + char* str, iv; + size_t index, id; + if (from_level == 0) { + // TODO: make it general. This only for trying offload with the vector add test case. + // NEW_C_CODE_2(start, "_Offload_status x;\nOFFLOAD_STATUS_INIT(x);\n"); + // NEW_C_CODE_2(start, "#pragma offload target(mic) status(x) optional in(a,b,c: length(N1*N2) alloc_if(a) free_if(1)) out(d:length(N1*N2) alloc_if(a) free_if(1))\n"); + if (generate_omp) { + CONTINUE_C_CODE_2(str, "#pragma offload target(mic)\n"); + CONTINUE_C_CODE_2(str, "{\n"); + CONTINUE_C_CODE_2(str, "ArenaManager *am = (ArenaManager*)malloc(sizeof(ArenaManager));\n"); + CONTINUE_C_CODE_2(str, "ArenaManager_ctor(am,100000000,65536,240);\n"); + CONTINUE_C_CODE_2(str, "#pragma omp parallel\n"); + CONTINUE_C_CODE_2(str, "{\n"); + CONTINUE_C_CODE_2(str, "ArenaClient *ac;\n"); + CONTINUE_C_CODE_2(str, "prepare_alloc(am,&ac);\n"); + CONTINUE_C_CODE_2(str, "#pragma omp for\n"); + } + } + + if (from_level == to_level - 1) { + CONTINUE_C_CODE_2(str, "#pragma vector always\n"); + } + + iv = 'i' + from_level; + PREPARE_TO_CONTINUE_C_CODE; + NEW_C_CODE_7(str, "for (int64_t __%c=0; __%c < %s.N%d; __%c++) {\n", iv, iv, result_variable_string(result), from_level, iv); + + for (size_t i = from_level + 1; i < to_level; i++) { + iv = 'i' + i; + if (i == to_level - 1) { + PREPARE_TO_CONTINUE_C_CODE; + NEW_C_CODE_2(str, "#pragma vector always\n"); + } + PREPARE_TO_CONTINUE_C_CODE; + NEW_C_CODE_7(str, "for (int64_t __%c=0; __%c < %s.N%d; __%c++) {\n", iv, iv, result_variable_string(result), i, iv); + } + return start; +} + +static char* for_loops_end(size_t from_level, size_t to_level, bool generate_omp = true) +{ + char *str; + assert(from_level <= to_level); + + char*start; + if (from_level == to_level) { + // You must print something to the code buffer, even an empty string, since the caller + // expects this behavior, and might have ajdusted c_code_end to point to '\0' in order + // to connect with the new string here. + NEW_C_CODE_2(start, ""); + return start; + } + + NEW_C_CODE_2(start, "}\n"); + + for (size_t i = from_level + 1; i < to_level; i++) { + char* str; + PREPARE_TO_CONTINUE_C_CODE; + NEW_C_CODE_2(str, "}\n"); + } + + if (from_level == 0) { + if (generate_omp) { + CONTINUE_C_CODE_2(str, "finish_alloc(ac);\n"); + CONTINUE_C_CODE_2(str, "}\n"); // end of #pragma omp parallel section + CONTINUE_C_CODE_2(str, "ArenaManager_dtor(am);\n"); + CONTINUE_C_CODE_2(str, "}\n"); // end of #pragma offload section + } + } + return start; +} + +static inline void add_aliased_arrays(ast_node_result_t* l, ast_node_result_t* r) +{ + // Both input should be arrays, or not arrays. + assert(!jl_is_array_type(l->result_var_type) || jl_is_array_type(r->result_var_type)); + assert(!jl_is_array_type(r->result_var_type) || jl_is_array_type(l->result_var_type)); + if (jl_is_array_type(r->result_var_type)) { + std::pair<jl_value_t*, jl_value_t*> p; + p.first = l->result_var; + p.second = r->result_var; + cur_func_result->aliased_arrays.push_back(p); + +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + JL_PRINTF(JL_STDOUT, "\nAliased arrays:"); + jl_static_show(JL_STDOUT, p.first); + jl_static_show(JL_STDOUT, p.second); + } +#endif + } +} + +static void j2c_copy(ast_node_result_t* result, ast_node_result_t* l, ast_node_result_t* r, jl_codectx_t *ctx) +{ + if (l->result_var == r->result_var) { + return; + } + + add_aliased_arrays(l, r); + +#ifdef MIN_TEMPS + if (l->is_temporary) { + l->representative = r; + return; + } + // Non-temporary (user var) still needs explicit assigment. +#endif + + if (!jl_is_array_type(l->result_var_type) || result->num_dims_fused == 0) { + NEW_C_CODE_4(result->epilog, "%s = %s;\n", result_variable_string(l), result_variable_string(r)); + return; + } + + size_t num_dims_fused = result->num_dims_fused; +/* if (num_dims_fused > 0) { + size_t from_level = (result->parent != NULL) ? result->parent->num_dims_fused : 0; + size_t to_level = result->result_var_dims.size(); + + result->prolog = for_loops_begin(result, from_level, to_level, ctx); + NEW_C_CODE_4(result->epilog, "%s = %s;\n", array_element(l, ctx), array_element(r, ctx)); + PREPARE_TO_CONTINUE_C_CODE; + for_loops_end(from_level, to_level); + return; + } +*/ + // TOFIX: check the type of the return array, and decide the character code + NEW_C_CODE_5(result->epilog, "cblas_dcopy(%s.len(), %s.data, 1, %s.data, 1);\n", result_variable_string(r), + result_variable_string(r), result_variable_string(l)); +} + +static void j2c_add(ast_node_result_t* result, std::vector<ast_node_result_t*>& args_results, jl_codectx_t *ctx) +{ + char* str; +/* if (result->result_var_dims.size() == 0) { // scalar + NEW_C_CODE_4(result->epilog, "%s = %s", ((jl_sym_t*)(result->result_var))->name, + result_variable_string(args_results[0])); + for (size_t i = 1; i < args_results.size(); i++) { + PREPARE_TO_CONTINUE_C_CODE; + NEW_C_CODE_3(str, "+%s", result_variable_string(args_results[i])); + } + + PREPARE_TO_CONTINUE_C_CODE; + NEW_C_CODE_2(str, ";\n"); + return; + } +*/ + assert(args_results.size() == 2); + + size_t num_dims_fused = result->num_dims_fused; +/* if (num_dims_fused > 0) { + size_t from_level = (result->parent != NULL) ? result->parent->num_dims_fused : 0; + size_t to_level = result->result_var_dims.size(); + + result->prolog = for_loops_begin(result, from_level, to_level, ctx); + NEW_C_CODE_5(result->epilog, "%s = %s + %s;\n", array_element(result, ctx), + array_element(args_results[0], ctx), array_element(args_results[1], ctx)); + PREPARE_TO_CONTINUE_C_CODE; + for_loops_end(from_level, to_level); + return; + } +*/ + assert(num_dims_fused == 0); + + //*axpy is defined as y = a*x + y. So the result and second operand must be the same + if (result->result_var != args_results[1]->result_var) { + j2c_copy(result, result, args_results[1], ctx); + + // TOFIX: check the type of the return array, and decide the character code + CONTINUE_C_CODE_3(str, "cblas_daxpy(%s.len()", result_variable_string(result)); + CONTINUE_C_CODE_4(str, ", 1.0, %s.data, 1, %s.data, 1);\n", result_variable_string(args_results[0]), + result_variable_string(result)); + } else { + // TOFIX: check the type of the return array, and decide the character code + NEW_C_CODE_3(result->epilog, "cblas_daxpy(%s.len()", result_variable_string(result)); + CONTINUE_C_CODE_4(str, ", 1.0, %s.data, 1, %s.data, 1);\n", result_variable_string(args_results[0]), + result_variable_string(args_results[1])); + } +} diff --git a/src/j2c.cpp b/src/j2c.cpp new file mode 100644 index 0000000000000..45078d9a7e549 --- /dev/null +++ b/src/j2c.cpp @@ -0,0 +1,2153 @@ +#include <sstream> +#include <float.h> + +/* + This is a plain and faithful Julia to C converter. No optimization. Any optimization, like fusion, should be + done before this conversion, and then the results will naturally be reflected in the C function. +*/ + +// When this is true, j2c is working (for a function and all its callees, as we +// will generate a self-contained library for the function). +static bool in_j2c_overall = false; + +// When this is true, j2c is on for the current func. Note that even if in_j2c_overall is +// true, it is possible that the current func is not going to be generated C code. This gives +// us fine control on which functions to generate, which not. +static bool in_j2c = false; +static ast_node_result_t* cur_func_result = NULL; +static jl_sym_t* cur_source_file = NULL; // current (julia) source file + +// The max dimensions of an array we can handle. So far, 2 dimensions, as Julia generates 1-d or 2-d arrays in general. +//#define MAX_ARRAY_DIMS 2 + +#define ASSERT(cond, jt, message) if (!(cond)) { \ + JL_PRINTF(JL_STDOUT, "assertion failed: %s\n%s\n", (#cond), message); \ + jl_static_show(JL_STDOUT, jt); \ + assert(false); \ +} + +#define WARN(cond, jt, message) if (!(cond)) { \ + JL_PRINTF(JL_STDOUT, "warning: %s\n%s\n", (#cond), message); \ + jl_static_show(JL_STDOUT, jt); \ + JL_PRINTF(JL_STDOUT, "\n"); \ +} + +#define J2C_UNIMPL_INTRINSIC(f) { \ + if (in_j2c) { \ + JL_PRINTF(JL_STDOUT, "Unimplemented intrinsic: %d\n", f); \ + assert(false);\ + } \ +} + +#define J2C_UNIMPL(message) { \ + if (in_j2c) { \ + JL_PRINTF(JL_STDOUT, "Unimplemented: %s\n", message); \ + assert(false);\ + } \ +} + +#define MAX_C_CODE_LEN 512*1024 +static char c_code[MAX_C_CODE_LEN]; // All strings in the c functions are put into this buffer +static char*c_code_end = c_code; // the current end of the strings in the buffer + +// we may create c identifiers when we are generating c code. We cannot write into the c_code buffer +// in case that the two are mixed incorrectly. So have a separate buffer for it. +#define MAX_C_IDENTIFIER_LEN MAX_C_CODE_LEN >> 3 +static char c_identifiers[MAX_C_IDENTIFIER_LEN]; +static char*c_identifiers_end = c_identifiers; + +#define MAX_OFFLOAD_CLAUSES_LEN 200 +static char offload_clauses[MAX_OFFLOAD_CLAUSES_LEN]; + +// Only if the root function returns an array: +#define MAX_RETURN_TYPE_LEN 50 +static char return_array_str[MAX_RETURN_TYPE_LEN]; +static char return_non_array_str[MAX_RETURN_TYPE_LEN]; + +// Two pointers to string for using as scratch. Note that in the course of using them, make sure there is no function +// call; otherwise, that call may also use them, and cause wrong output. +static char*scratch_str; +static char*scratch_str1; + + +// add new code. After this, c_code_end points to after the null terminator of the code. +#define NEW_C_CODE_COMMON(result) { \ + result = c_code_end; \ + c_code_end += strlen(c_code_end) + 1; \ + assert(c_code_end < c_code + MAX_C_CODE_LEN); \ +} + +#define NEW_C_CODE_2(result, format) { \ + sprintf(c_code_end, format); \ + NEW_C_CODE_COMMON(result) \ +} + +#define NEW_C_CODE_3(result, format, input) { \ + sprintf(c_code_end, format, input); \ + NEW_C_CODE_COMMON(result) \ +} + +#define NEW_C_CODE_4(result, format, input1, input2) { \ + sprintf(c_code_end, format, input1, input2); \ + NEW_C_CODE_COMMON(result) \ +} + +#define NEW_C_CODE_5(result, format, input1, input2, input3) { \ + sprintf(c_code_end, format, input1, input2, input3); \ + NEW_C_CODE_COMMON(result) \ +} + +#define NEW_C_CODE_6(result, format, input1, input2, input3, input4) { \ + sprintf(c_code_end, format, input1, input2, input3, input4); \ + NEW_C_CODE_COMMON(result) \ +} + +#define NEW_C_CODE_7(result, format, input1, input2, input3, input4, input5) { \ + sprintf(c_code_end, format, input1, input2, input3, input4, input5); \ + NEW_C_CODE_COMMON(result) \ +} + +#define NEW_C_CODE_8(result, format, input1, input2, input3, input4, input5, input6) { \ + sprintf(c_code_end, format, input1, input2, input3, input4, input5, input6); \ + NEW_C_CODE_COMMON(result) \ +} + +#define NEW_C_CODE_9(result, format, input1, input2, input3, input4, input5, input6, input7) { \ + sprintf(c_code_end, format, input1, input2, input3, input4, input5, input6, input7); \ + NEW_C_CODE_COMMON(result) \ +} + +#define NEW_C_CODE_10(result, format, input1, input2, input3, input4, input5, input6, input7, input8) { \ + sprintf(c_code_end, format, input1, input2, input3, input4, input5, input6, input7, input8); \ + NEW_C_CODE_COMMON(result) \ +} + +#define NEW_C_CODE_11(result, format, input1, input2, input3, input4, input5, input6, input7, input8, input9) { \ + sprintf(c_code_end, format, input1, input2, input3, input4, input5, input6, input7, input8, input9); \ + NEW_C_CODE_COMMON(result) \ +} + +#define PREPARE_TO_CONTINUE_C_CODE { \ + assert(*c_code_end == '\0'); \ + c_code_end--; \ +} + +#define CONTINUE_C_CODE_2(result, format) { \ + PREPARE_TO_CONTINUE_C_CODE \ + NEW_C_CODE_2(result, format) \ +} + +#define CONTINUE_C_CODE_3(result, format, input1) { \ + PREPARE_TO_CONTINUE_C_CODE \ + NEW_C_CODE_3(result, format, input1) \ +} + +#define CONTINUE_C_CODE_4(result, format, input1, input2) { \ + PREPARE_TO_CONTINUE_C_CODE \ + NEW_C_CODE_4(result, format, input1, input2) \ +} + +#define CONTINUE_C_CODE_5(result, format, input1, input2, input3) { \ + PREPARE_TO_CONTINUE_C_CODE \ + NEW_C_CODE_5(result, format, input1, input2, input3) \ +} + +#define CONTINUE_C_CODE_6(result, format, input1, input2, input3, input4) { \ + PREPARE_TO_CONTINUE_C_CODE \ + NEW_C_CODE_6(result, format, input1, input2, input3, input4) \ +} + +#define CONTINUE_C_CODE_7(result, format, input1, input2, input3, input4, input5) { \ + PREPARE_TO_CONTINUE_C_CODE \ + NEW_C_CODE_7(result, format, input1, input2, input3, input4, input5) \ +} + +// C functions generated +static std::vector<ast_node_result_t*> functions; + +// C type table, global to all functions +static std::vector<type_table_t> type_table; + +/* Overall structure of a C file: + * included header files + * declare (struct,...) types (outside the function, as Julia does not declare a struct inside a function) + * forward declaration of all functions generated (to handle recursive func calls) + * definition of each function +*/ + +static std::vector<char*> includes; +static std::vector<char*> types_declaration; + +// For a julia symbol (func/var name), map it to a legal C identifier +static std::map<jl_sym_t*, char*> sym_identifier; + +// For generating a temporary: +static int tmp_var_id = 0; + +static jl_sym_t* new_tmp_var() +{ + char * str; + NEW_C_CODE_3(str, "__t%d", tmp_var_id++); + jl_sym_t *s = jl_symbol(str); + return s; +} + +// TODO: modifiy this part such that it works only for fusion. So instead of making parent-child +// relationship, it disconnects some parent-child relationship, and reconnect properly +// During walking an AST node, some nodes may be found to have to be precomputed before this +// node and thus should be added to precomputed_chilcren. Others are added into children +static void add_child(ast_node_result_t* parent, ast_node_result_t* child) +{ + if (child->num_dims_fused < parent->num_dims_fused) { + // Search backward to find the right place to precompute the child. + ast_node_result_t* prev = parent; + for (parent = prev->parent; parent != NULL; parent = prev->parent) { + if (child->num_dims_fused >= parent->num_dims_fused) { + break; + } + prev = parent; + } + if (parent == NULL) { + prev->precomputed_children.push_back(child); + } else { + parent->children.push_back(child); + } + } else { + parent->children.push_back(child); + } +} + +// Julia function/var/type names may not valid C identifiers. Here we normalize them +static char * c_identifier(const char * str) +{ + char *start; + start = c_identifiers_end++; + *start = '\0'; + for (int i = 0; str[i] != '\0'; i++) { + char *replace = NULL; + char c = str[i]; + if (c == ' ') continue; // ignore spaces + else if (c == '#') { replace = "p"; } + else if (c == '+') { replace = "add"; } + else if (c == '-') { replace = "sub"; } + else if (c == '.') { replace = "dot"; } + else if (c == '*') { replace = "mul"; } + else if (c == '/') { replace = "div"; } + else if (c == '!') { replace = "ex"; } + + if (replace != NULL) { + strcat(start, replace); + c_identifiers_end = start + strlen(start) + 1; + } else { + assert(*(c_identifiers_end -1) == '\0'); + *(c_identifiers_end -1) = c; + *c_identifiers_end++ = '\0'; + } + } + return start; +} + +char * c_identifier(jl_sym_t *s) +{ + char* identifier = sym_identifier[s]; + if (identifier == NULL) { + identifier = c_identifier(s->name); + sym_identifier[s] = identifier; + } + return identifier; +} + +// An AST node's result variable's string representation + +char *result_variable_string(ast_node_result_t* t) +{ + if (t->representative != NULL) { + return result_variable_string(t->representative); + } + jl_value_t * rv = t->result_var; + if (t->is_constant) { + ASSERT(t->constant != NULL, rv, "Unhandled constant"); + return t->constant; + } + + if (jl_is_symbol(rv)) { + return c_identifier((jl_sym_t *)rv); + } + ASSERT(false, rv, "Unhandled result var"); + return NULL; +} + +size_t element_type_id(jl_value_t *jt); + +// TODO: handle recurisvely defined types +static bool equivalent_types(jl_value_t *jt, jl_value_t *jt1) +{ + if (jt == jt1) { + return true; + } + + if (jl_is_array_type(jt) && jl_is_array_type(jt1)) { + return (element_type_id(jt) == element_type_id(jt1)); + } + + if ((jl_is_tuple(jt) && jl_is_tuple(jt1)) || (jl_is_structtype(jt) && jl_is_structtype(jt1))) { + bool is_tuple = jl_is_tuple(jt); + size_t ntypes = is_tuple ? jl_tuple_len((jl_tuple_t*)jt) : jl_tuple_len(((jl_datatype_t*)jt)->types); + size_t ntypes1 = is_tuple ? jl_tuple_len((jl_tuple_t*)jt1) : jl_tuple_len(((jl_datatype_t*)jt1)->types); + if (ntypes != ntypes1) { + return false; + } + for(size_t i = 0; i < ntypes; i++) { + jl_value_t *ty = is_tuple ? jl_tupleref((jl_tuple_t*)jt, i) : jl_tupleref(((jl_datatype_t*)jt)->types, i); + jl_value_t *ty1 = is_tuple ? jl_tupleref((jl_tuple_t*)jt1, i) : jl_tupleref(((jl_datatype_t*)jt1)->types, i); + if (!equivalent_types(ty, ty1)) { + return false; + } + } + return true; + } + return false; +} + +static size_t type_id(jl_value_t * jt) +{ + assert(jt != NULL); + assert(jl_is_type(jt)); + + for (size_t i = 0; i < type_table.size(); i++) { + if (type_table[i].is_field) { + continue; + } + if (equivalent_types(jt, type_table[i].jt)) { + return i; + } + } + return -1; +} + +inline static char* type_name(jl_value_t* jt) +{ + size_t id = type_id(jt); + if (id == -1) { + return NULL; + } + return type_table[id].c_name; +} + +inline size_t element_type_id(jl_value_t *jt) +{ + ASSERT(jl_is_array_type(jt), jt, "Array type expected"); + jl_value_t *t = jl_tupleref(((jl_datatype_t*)jt)->parameters,0); + return type_id(t);; +} + +inline static char* element_type_name(jl_value_t* jt) +{ + ASSERT(jl_is_array_type(jt), jt, "Array type expected"); + size_t id = element_type_id(jt); + if (id >= 0) { + return type_table[id].c_name; + } + return NULL; +} + +// For each type appeared in the program, insert it into the above type table. return the entry id. +// Modeled after julia_type_to_llvm() + +int create_leaf_type(jl_value_t * jt, const char* name, bool is_field = false, bool is_struct = false, +bool is_array = false, bool is_ptr = false) +{ + type_table_t entry; + + entry.is_field = is_field; + entry.is_struct = is_struct; + entry.is_array = is_array; + entry.declared = false; + entry.jt = jt; + if (is_array) { + NEW_C_CODE_3(entry.c_name, "%s*", name); + NEW_C_CODE_3(entry.array_prefix, "%s", c_identifier(name)); + } else if (is_ptr) { + NEW_C_CODE_3(entry.c_name, "%s*", name); + } else { + NEW_C_CODE_3(entry.c_name, "%s", name); + } + + type_table.push_back(entry); + return type_table.size() - 1; +} + +size_t create_c_type(jl_value_t *v); + +size_t create_c_struct_type(jl_value_t *v) +{ + char * struct_name; + size_t ntypes; + std::vector<size_t> field_ids; + std::vector<char*> field_names; + if (jl_is_tuple(v)) { + NEW_C_CODE_3(struct_name, "struct tuple_%d", tmp_var_id++); + jl_tuple_t *t = (jl_tuple_t*)v; + ntypes = jl_tuple_len(t); + ASSERT(ntypes < 256, v, "Tuple is too long to create a struct type for it. Consider using an array instead of tuple"); + //NEW_C_CODE_2(NULL, "int64_t len;\n"); + //field_ids.push_back(create_c_type(jl_int64_type)); + //NEW_C_CODE_2(str, "len"); + //field_names.push_back(str); + for(size_t i = 0; i < ntypes; i++) { + jl_value_t *ty = jl_tupleref(t, i); //Note: for jl_tupleref(t, i), i starts from 0, not 1! + field_ids.push_back(create_c_type(ty)); + + char * str; + NEW_C_CODE_3(str, "f%d", i+1); + field_names.push_back(str); + } + //ntypes++; // account for the len field added + } else if (jl_is_structtype(v)) { + jl_datatype_t *dv = (jl_datatype_t*)v; + NEW_C_CODE_3(struct_name, "struct %s", dv->name->name->name); + /*if (dv->name->module != jl_core_module) { + strcat(struct_name, ((jl_module_t*)dv->name->module)->name->name); + strcat(struct_name, "_"); + }*/ + + ntypes = jl_tuple_len(dv->types); + for(size_t i = 0; i < ntypes; i++) { + jl_value_t *ty = jl_tupleref(dv->types, i); + field_ids.push_back(create_c_type(ty)); + field_names.push_back(((jl_sym_t*)jl_tupleref(dv->names, i))->name); + } + } else { + ASSERT(false, v, "Unknow struct type"); + } + + int id = create_leaf_type(v, struct_name, false /*is_field*/, true /*is_struct*/); + // add the field info + create_leaf_type((jl_value_t*)ntypes /*#fields*/, "", true /*is_field*/, false /*is_struct*/); + for(size_t i = 0; i < ntypes; i++) { + create_leaf_type((jl_value_t*)field_ids[i], field_names[i], true /*is_field*/, false /*is_struct*/); + } + return id; +} + +// modeled after jl_static_show() +size_t create_c_type(jl_value_t *v) +{ + if (v == NULL) { + return -1; + } + + assert(jl_is_type(v)); + + int id = type_id(v); + if (id >= 0) { + return id; // already created + } + +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + static int count=0; + count++; + JL_PRINTF(JL_STDOUT, "\n^^%d create a type:", count); + jl_static_show(JL_STDOUT, v); + } +#endif + + // basic types + if ((void*)v == (void*)jl_int64_type) { + return create_leaf_type(v, (const char*) "int64_t"); + } + else if ((void*)v == (void*)jl_int32_type) { + return create_leaf_type(v, (const char*) "int32_t"); + } + else if ((void*)v == (void*)jl_int16_type) { + return create_leaf_type(v, (const char*) "int16_t"); + } + else if ((void*)v == (void*)jl_int8_type) { + return create_leaf_type(v, (const char*) "int8_t"); + } + else if ((void*)v == (void*)jl_uint64_type) { + return create_leaf_type(v, (const char*) "uint64_t"); + } + else if ((void*)v == (void*)jl_uint32_type) { + return create_leaf_type(v, (const char*) "uint32_t"); + } + else if ((void*)v == (void*)jl_uint16_type) { + return create_leaf_type(v, (const char*) "uint16_t"); + } + else if ((void*)v == (void*)jl_uint8_type) { + return create_leaf_type(v, (const char*) "uint8_t"); + } + else if ((void*)v == (void*)jl_float64_type) { + return create_leaf_type(v, (const char*) "double"); + } + else if ((void*)v == (void*)jl_float32_type) { + return create_leaf_type(v, (const char*) "float"); + } + else if ((void*)v == (void*)jl_bottom_type) { + return create_leaf_type(v, (const char*) "void"); + } + else if ((void*)v == (void*)(jl_nothing->type)) { + return create_leaf_type(v, (const char*) "void"); + } + + // below modeled after jl_is_type() + else if (jl_is_tuple(v)) { + // Handle tuple as a struct + if (jl_tuple_len(v) == 0) + return create_leaf_type(v, (const char*)"void"); + else + return create_c_struct_type(v); + } + else if (jl_is_uniontype(v)) { + ASSERT(false, v, "Union not handled yet"); + return -1; + } + else if (jl_is_datatype(v)) { + jl_datatype_t *dv = (jl_datatype_t*)v; + if (jl_is_array_type(dv)) { + jl_value_t *t = jl_tupleref(dv->parameters,0); + size_t id = create_c_type(t); + char * name = type_table[id].c_name; + return create_leaf_type(v, name, false, false, true); + } + + if (jl_is_structtype(dv)) { + return create_c_struct_type(v); + } + + if (!strcmp(dv->name->name->name, "Bool")) { + return create_leaf_type(v, "bool"); + } + + if (jl_is_cpointer_type(dv)) { + jl_value_t *ety = jl_tparam0(dv); + assert(!jl_is_typevar(ety)); + + size_t id = create_c_type(ety); + char * name = type_table[id].c_name; + return create_leaf_type(v, name, false, false, false, true); + } + + // TODO: consider dv->parameters + WARN(false, v, "Create a data type without considering parameters"); + return create_leaf_type(v, (const char*) dv->name->name->name); + } + else if (jl_is_typector(v)) { + ASSERT(false, v, "Type vector not handled yet"); + return -1; + } + + ASSERT(false, v, "Uhandled type"); + return -1; +} + +void j2c_create_type_table(jl_lambda_info_t *lam, jl_expr_t *ast) +{ + jl_value_t *jlrettype = jl_ast_rettype(lam, (jl_value_t*)ast); + create_c_type(jlrettype); + + // arguments' types specialized for this function + for(size_t i=0; i < jl_tuple_len(lam->specTypes); i++) { + create_c_type(jl_tupleref(lam->specTypes, i)); + } + + // Local variables + // Modeled after jl_prepare_ast() + jl_array_t *vinfos = jl_lam_vinfo(ast); + size_t vinfoslen = jl_array_dim0(vinfos); + for(size_t i = 0; i < vinfoslen; i++) { + jl_array_t *vi = (jl_array_t*)jl_cellref(vinfos, i); + assert(jl_is_array(vi)); + jl_value_t * declType = jl_cellref(vi,1); + create_c_type(declType); + } +} + +// Generating C type declarations +static inline void declare_type(size_t i) +{ + assert(i < type_table.size()); + + if (type_table[i].declared) return; + + type_table[i].declared = true; + + // First, make sure all types this type depends on have been produced. + if (type_table[i].is_struct) { + assert(i + 1 < type_table.size()); + + size_t total_fields = (size_t)(type_table[i + 1].jt); + for (size_t id = 0; id < total_fields; id++) { + assert(i + 2 + id < type_table.size()); + assert(type_table[i + 2 + id].is_field); + + declare_type((size_t)(type_table[i + 2 + id].jt)); + } + } + + if (type_table[i].is_struct) { + char *start, *str; + NEW_C_CODE_3(start, "%s {\n", type_table[i].c_name); + types_declaration.push_back(start); + size_t total_fields = (size_t)(type_table[i + 1].jt); + for (size_t id = 0; id < total_fields; id++) { ; + if (type_table[(size_t)(type_table[i + 2 + id].jt)].is_array) { + // We assume that no struct can be passed from Julia to C. To do that, + // it must pass element by element. And inside our generated code, all arrays + // are represented in our array structure. + CONTINUE_C_CODE_4(str, "%s_array %s;\n", type_table[(size_t)(type_table[i + 2 + id].jt)].array_prefix, type_table[i + 2 + id].c_name); + } else { ; + CONTINUE_C_CODE_4(str, "%s %s;\n", type_table[(size_t)(type_table[i + 2 + id].jt)].c_name, type_table[i + 2 + id].c_name); + } + } + CONTINUE_C_CODE_2(str, "};\n"); + } + + if (type_table[i].is_array) { + NEW_C_CODE_4(scratch_str, "DECL_C_ARRAY(%s, %s)\n", element_type_name(type_table[i].jt), type_table[i].array_prefix); + types_declaration.push_back(scratch_str); + NEW_C_CODE_4(scratch_str, "DEF_C_ARRAY(%s, %s)\n", element_type_name(type_table[i].jt), type_table[i].array_prefix); + types_declaration.push_back(scratch_str); + } +} + +static void declare_types() +{ + for (size_t i = 0; i < type_table.size(); i++) { + if (!type_table[i].is_field) { + if ((jl_is_tuple(type_table[i].jt) || jl_is_structtype(type_table[i].jt)) || jl_is_array_type(type_table[i].jt)) { + declare_type(i); + } + } + } +} + +static inline jl_value_t* local_var_type(jl_sym_t *s, jl_codectx_t *ctx) +{ + assert(!is_global(s, ctx)); + jl_varinfo_t &vi = ctx->vars[s]; + jl_value_t *jt = vi.declType; + return jt; +} + +// Is the argement s of the function both in and out? +static inline bool argument_inout(jl_sym_t *s, jl_codectx_t *ctx) +{ + assert(!is_global(s, ctx)); + jl_varinfo_t &vi = ctx->vars[s]; + assert(vi.isArgument); + return vi.escapes && vi.isAssigned; +} + +Value *var_binding_pointer(jl_sym_t *s, jl_binding_t **pbnd, bool assign, jl_codectx_t *ctx); + +// modeled after emit_var() +static inline jl_value_t* global_var_type(jl_sym_t *s, jl_codectx_t *ctx) +{ + assert(is_global(s, ctx)); + + // look for static parameter + for(size_t i = 0; i < jl_tuple_len(ctx->sp); i += 2) { + assert(jl_is_symbol(jl_tupleref(ctx->sp, i))); + if (s == (jl_sym_t*)jl_tupleref(ctx->sp, i)) { + return jl_typeof(jl_tupleref(ctx->sp, i+1)); + } + } + jl_binding_t *jbp = NULL; + var_binding_pointer(s, &jbp, false, ctx); + assert(jbp != NULL); + return jbp->type; +} + +static inline jl_value_t* var_type(jl_sym_t *s, jl_codectx_t *ctx) +{ + jl_value_t * jt; + if (is_global(s, ctx)) { + jt = global_var_type(s, ctx); + } else { + jt = local_var_type(s, ctx); + } + return jt; +} + +#include "j2c-calls.cpp" + +static void declare_local_and_tmp_var(jl_sym_t* s, jl_value_t* jt, jl_codectx_t *ctx, +ast_node_result_t *t, std::vector<char*>& local_vars_declaration, +std::vector<char*>& arrays_initialization, bool is_argument, +size_t& array_dims_index) +{ + char *s_id_name = c_identifier(s); + char *start = NULL, *str; + if (jl_is_array_type(jt)) { + jl_value_t *et = jl_tupleref(((jl_datatype_t*)jt)->parameters,0); // array elements' type + char * et_name = type_table[type_id(et)].c_name; + char * id_name = c_identifier(et_name); + if ((t != NULL) && t->made_scalar) { + NEW_C_CODE_4(start, "%s %s;\n", et_name, s_id_name); + local_vars_declaration.push_back(start); + } else { + NEW_C_CODE_4(start, "%s_array %s;\n", id_name, s_id_name); + local_vars_declaration.push_back(start); + + if (is_argument) { + // encapsulate it in our array struct. Naming: remove the "_" in the argument. + jl_value_t *p1 = jl_tparam1(jt); + assert(jl_is_long(p1)); + size_t nd = jl_unbox_long(p1); + NEW_C_CODE_6(start, "%s = new_%s_array_%dd(_%s", s_id_name, id_name, nd, s_id_name); + size_t j; + for (j = 1; j <= nd; j++) { + CONTINUE_C_CODE_3(str, ", __N%ld", array_dims_index++); + } +// for (; j <= MAX_ARRAY_DIMS; j++) { +// CONTINUE_C_CODE_2(str, ", 1"); +// } + CONTINUE_C_CODE_2(str, ");\n"); + arrays_initialization.push_back(start); + + } else { + // Local arrays will be allocated with jl_f_alloc_array_1/2/3d. Here just initialize. + // Initializationis needed as when the function returns, and we need to free some arrays, + // and their data pointers can not be random (but can be NULL). + NEW_C_CODE_3(start, "INITARRAY(%s);\n", s_id_name); + arrays_initialization.push_back(start); + } + } + } else { + char * tyname = type_name(jt); + assert(tyname != NULL); + NEW_C_CODE_4(start, "%s %s;\n", tyname, s_id_name); + local_vars_declaration.push_back(start); + } + +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + static int count=0; + count++; + JL_PRINTF(JL_STDOUT, "***%d DEC %s\n", count, start); + } +#endif +} + +static void j2c_declare_local_and_tmp_vars(jl_expr_t *ast, jl_lambda_info_t *lam, jl_codectx_t *ctx) +{ + std::set<jl_sym_t*> declared_vars; // already declared variables + size_t array_dims_index = 1; + + // Function arguments have already been declared. But for arrays, we need + // to encapsulate it in our array struct. + jl_array_t *largs = jl_lam_args(ast); + size_t largslen = jl_array_dim0(largs); + size_t i; + for(i=0; i < largslen; i++) { + jl_sym_t *s = jl_decl_var(jl_cellref(largs,i)); + jl_value_t *jt = jl_tupleref(lam->specTypes,i); + bool is_array = jl_is_array_type(jt); + if (is_array && cur_func_result->is_root_func) { + declare_local_and_tmp_var(s, jt, ctx, NULL, cur_func_result->local_vars_declaration, + cur_func_result->arrays_initialization, true, array_dims_index); + } + declared_vars.insert(s); + } + + std::map<jl_value_t*, ast_node_result_t*>::iterator itr; + for(itr = ctx->ast_node_results.begin(); itr != ctx->ast_node_results.end(); itr++) { + ast_node_result_t* t = itr->second; + assert(t != NULL); + + if ((t->representative != NULL) || t->is_constant) { + continue; + } + +/* static int count=0; + count++; + JL_PRINTF(JL_STDOUT, "^^^ %d %s\n", count, result_variable_string(t)); + jl_static_show(JL_STDOUT, t->result_var_type); + jl_static_show(JL_STDOUT, itr->first); + JL_PRINTF(JL_STDOUT, "\n"); +*/ + jl_value_t* jt = t->result_var_type; + char *type_name_jt = type_name(jt); + if (type_name_jt == NULL || !strcmp(type_name_jt, "void")) { + // We use NULL to determine that a node is not a type, e.g. "goto" node + continue; + } + + jl_sym_t* s = (jl_sym_t*)(t->result_var); + if (declared_vars.find(s) == declared_vars.end()) { + declare_local_and_tmp_var(s, jt, ctx, t, cur_func_result->local_vars_declaration, + cur_func_result->arrays_initialization, false, array_dims_index); + declared_vars.insert(s); + } + } +} + + +// A symbol is used as the result variable of an expression. Record related facts. +static void symbol_as_result_var(jl_sym_t* s, jl_codectx_t *ctx, ast_node_result_t* result) +{ + result->result_var = (jl_value_t*)s; + jl_value_t *jt = var_type(s, ctx); + result->result_var_type = jt; +} + +static ast_node_result_t* get_ast_node_result(jl_value_t* ast_node, jl_codectx_t *ctx) +{ +#if 0 //def J2C_VERBOSE + if (enable_j2c_verbose) { + static int count=0; + count++; + JL_PRINTF(JL_STDOUT, "^^^get_ast_node_result %d:\n", count); + jl_static_show(JL_STDOUT, ast_node); + JL_PRINTF(JL_STDOUT, "\n"); + } +#endif + + + ast_node_result_t* t = ctx->ast_node_results[ast_node]; + + if (t == NULL) { + t = new ast_node_result_t; + t->ast_node = ast_node; + t->return_result = false; + t->is_temporary = false; + t->is_constant = false; + t->made_scalar = false; + t->is_root_func = false; + t->result_var = NULL; + t->result_var_type = NULL; + t->parent = NULL; + t->representative = NULL; + t->constant = NULL; + t->prolog = NULL; + t->epilog = NULL; + t->return_statement = NULL; + t->num_dims_fused = 0; + ctx->ast_node_results[ast_node] = t; + + // Now fill in info as much as possible from the ast node + if (jl_is_symbol(ast_node)) { + symbol_as_result_var((jl_sym_t*)ast_node, ctx, t); + } + else if (jl_is_symbolnode(ast_node)) { + symbol_as_result_var((jl_sym_t*)jl_symbolnode_sym(ast_node), ctx, t); + } else if (!jl_is_expr(ast_node)) { + // Some nodes like quotenode may get here + t->result_var_type = ast_node->type; + + char* str = NULL; + if (jl_is_int64(ast_node)) { + int64_t val = (int64_t)(jl_unbox_int64(ast_node)); + NEW_C_CODE_3(str, "%ld", val); + } else if (jl_is_int32(ast_node)) { + int32_t val = (int32_t)(jl_unbox_int32(ast_node)); + NEW_C_CODE_3(str, "%d", val); + } else if (jl_typeis(ast_node,jl_int16_type)) { + int16_t val = (int16_t)(jl_unbox_int16(ast_node)); + NEW_C_CODE_3(str, "%d", val); + } else if (jl_typeis(ast_node,jl_int8_type)) { + int8_t val = (int8_t)(jl_unbox_int8(ast_node)); + NEW_C_CODE_3(str, "%d", val); + } else if (jl_is_uint64(ast_node)) { + uint64_t val = (uint64_t)(jl_unbox_uint64(ast_node)); + NEW_C_CODE_3(str, "%lu", val); + } else if (jl_is_uint32(ast_node)) { + uint32_t val = (uint32_t)(jl_unbox_uint32(ast_node)); + NEW_C_CODE_3(str, "%u", val); + } else if (jl_typeis(ast_node,jl_uint16_type)) { + uint16_t val = (uint16_t)(jl_unbox_uint16(ast_node)); + NEW_C_CODE_3(str, "%u", val); + } else if (jl_typeis(ast_node,jl_uint8_type)) { + uint8_t val = (uint8_t)(jl_unbox_uint8(ast_node)); + NEW_C_CODE_3(str, "%u", val); + } else if (jl_is_float32(ast_node)) { + float val = (float)(jl_unbox_float32(ast_node)); + NEW_C_CODE_4(str, "%.*f", FLT_DIG, val); + } else if (jl_is_float64(ast_node)) { + double val = (double)(jl_unbox_float64(ast_node)); + NEW_C_CODE_4(str, "%.*f", DBL_DIG, val); + } else if (ast_node == jl_true) { + NEW_C_CODE_2(str, "true"); + } else if (ast_node == jl_false) { + NEW_C_CODE_2(str, "false"); + } else if (jl_is_cpointer(ast_node)) { + NEW_C_CODE_3(str, "0x%16x", jl_unbox_voidpointer(ast_node)); + } else if (jl_is_byte_string(ast_node)) { + NEW_C_CODE_3(str, "%s", jl_iostr_data(ast_node)); + } + +#ifdef MIN_TEMPS + if (str != NULL) { + t->is_constant = true; + t->constant = str; + t->result_var = ast_node; + } else { + t->result_var = (jl_value_t*)new_tmp_var(); + t->is_temporary = true; + } +#else + t->result_var = (jl_value_t*)new_tmp_var(); + t->is_temporary = true; + if (str != NULL) { + NEW_C_CODE_4(t->epilog, "%s = %s;\n", result_variable_string(t), str); + } +#endif + } else { + jl_expr_t *ex = (jl_expr_t*)ast_node; + t->result_var = (jl_value_t*)new_tmp_var(); + t->result_var_type = ex->etype; + t->is_temporary = true; + } + } + return t; +} + +static void dump_ast_node(ast_node_result_t *t, FILE * fs, std::vector<jl_value_t*>* freeable_local_arrays) +{ + for(size_t i=0; i < t->precomputed_children.size(); i++) { + dump_ast_node(t->precomputed_children[i], fs, freeable_local_arrays); + } + + if (t->prolog != NULL) { + fprintf(fs, "%s", t->prolog); + } + + for(size_t i=0; i < t->children.size(); i++) { + dump_ast_node(t->children[i], fs, freeable_local_arrays); + } + + if (t->epilog != NULL) { + fprintf(fs, "%s", t->epilog); + } + + if (t->return_statement != NULL) { + if (freeable_local_arrays != NULL) { + for (size_t i = 0; i < freeable_local_arrays->size(); i++) { + jl_value_t* s = (*freeable_local_arrays)[i]; + assert(jl_is_symbol(s)); + fprintf(fs, "FREEARRAY(%s);\n", ((jl_sym_t*)s)->name); + } + } + fprintf(fs, "%s", t->return_statement); + } +} + +static void find_freeable_local_arrays(std::vector<jl_value_t*> return_aliased_arrays, +std::vector<jl_value_t*>& freeable_local_arrays) +{ + for (size_t i = 0; i < cur_func_result->local_arrays.size(); i++) { + jl_value_t * s = cur_func_result->local_arrays[i]; + assert(jl_is_symbol(s)); + bool aliased = false; + for (size_t j = 0; j < return_aliased_arrays.size(); j++) { + if (s == return_aliased_arrays[j]) { + aliased = true; + break; + } + } + if (!aliased) { + freeable_local_arrays.push_back(s); + } + } + +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + JL_PRINTF(JL_STDOUT, "\n**** Find freeable local arrays:\n\tReturn alias arrays are:"); + for (size_t i = 0; i < return_aliased_arrays.size(); i++){ + jl_value_t *s = return_aliased_arrays[i]; + JL_PRINTF(JL_STDOUT, " %s", ((jl_sym_t*)s)->name); + } + JL_PRINTF(JL_STDOUT, "\n\tLocal arrays are:"); + for (size_t i = 0; i < cur_func_result->local_arrays.size(); i++){ + jl_value_t *s = cur_func_result->local_arrays[i]; + JL_PRINTF(JL_STDOUT, " %s", ((jl_sym_t*)s)->name); + } + JL_PRINTF(JL_STDOUT, "\n\tFreeable local arrays are:"); + for (size_t i = 0; i < freeable_local_arrays.size(); i++){ + jl_value_t *s = freeable_local_arrays[i]; + JL_PRINTF(JL_STDOUT, " %s", ((jl_sym_t*)s)->name); + } + } +#endif +} + +static bool in_array(jl_value_t* t, std::vector<jl_value_t*>& a) +{ + for (size_t j = 0; j < a.size(); j++){ + if (t == a[j]) { + return true; + } + } + return false; +} + +static void find_return_aliased_array(std::vector<jl_value_t*>& return_aliased_arrays) +{ + // Do flow-insensitive alias analysis + std::vector<std::pair<jl_value_t*, jl_value_t*> >& aliased_arrays = cur_func_result->aliased_arrays; + return_aliased_arrays = cur_func_result->return_arrays; + bool changed = true; + while (changed) { + changed = false; + for (size_t i = 0; i < aliased_arrays.size(); i++){ + jl_value_t *s = NULL; + if (in_array(aliased_arrays[i].first, return_aliased_arrays) && + !in_array(aliased_arrays[i].second, return_aliased_arrays)) { + s = aliased_arrays[i].second; + } + if (!in_array(aliased_arrays[i].first, return_aliased_arrays) && + in_array(aliased_arrays[i].second, return_aliased_arrays)) { + s = aliased_arrays[i].first; + } + + if (s != NULL) { + changed = true; + return_aliased_arrays.push_back(s); + } + } + } + +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + JL_PRINTF(JL_STDOUT, "\n**** Find return alias arrays:\n\tReturn arrays are:"); + for (size_t i = 0; i < cur_func_result->return_arrays.size(); i++){ + jl_value_t *s = cur_func_result->return_arrays[i]; + JL_PRINTF(JL_STDOUT, " %s", ((jl_sym_t*)s)->name); + } + JL_PRINTF(JL_STDOUT, "\n\talias arrays are:"); + for (size_t i = 0; i < cur_func_result->aliased_arrays.size(); i++){ + jl_value_t *s1 = cur_func_result->aliased_arrays[i].first; + jl_value_t *s2 = cur_func_result->aliased_arrays[i].second; + JL_PRINTF(JL_STDOUT, " (%s, %s)", ((jl_sym_t*)s1)->name, ((jl_sym_t*)s2)->name); + } + JL_PRINTF(JL_STDOUT, "\n\tReturn alias arrays are:"); + for (size_t i = 0; i < return_aliased_arrays.size(); i++){ + jl_value_t *s = return_aliased_arrays[i]; + JL_PRINTF(JL_STDOUT, " %s", ((jl_sym_t*)s)->name); + } + } +#endif +} + +static void dump_func(FILE* fs, ast_node_result_t *func_result) +{ + cur_func_result = func_result; + + fprintf(fs, "%s\n{\n", func_result->signature); + + for (size_t i = 0; i < func_result->local_vars_declaration.size(); i++) { + fprintf(fs, "%s", func_result->local_vars_declaration[i]); + } + + fprintf(fs, "\n// Initializing arrays\n"); + for (size_t i = 0; i < func_result->arrays_initialization.size(); i++) { + fprintf(fs, "%s", func_result->arrays_initialization[i]); + } + + std::vector<jl_value_t*> return_aliased_arrays; // all the arrays that may aliased with the return arrays + find_return_aliased_array(return_aliased_arrays); + + std::vector<jl_value_t*> freeable_local_arrays; // all the local arrays that can be freed at return + find_freeable_local_arrays(return_aliased_arrays, freeable_local_arrays); + + dump_ast_node(func_result, fs, &freeable_local_arrays); + + fprintf(fs, "}\n\n"); +} + +static void dump_a_call_to_root_func(FILE* fs) +{ + char *p; + for (p = cur_func_result->signature; !(*p == ' ' && *(p+1) == '('); p++); + for (p--; *p != ' '; p--); + for (; !(*p == ' ' && *(p+1) == '('); p++) { + fprintf(fs, "%c", *p); + } + p += 2; + fprintf(fs, "("); + for (; *p; p++) { + while (*p != ',' && *p != ')') { p++; } + p--; while (isblank(*p)) p--; + p--; while (!isblank(*p)) p--; + p++; + while (*p != ',' && *p != ')') { fprintf(fs, "%c", *p); p++; } + fprintf(fs, "%c", *p); + } + + fprintf(fs, ";\n"); +} + +static void dump_entry_function(FILE* fs, ast_node_result_t *func_result) +{ + cur_func_result = func_result; + + // Create a function that can be called externally, and it initiates offloading to Xeon Phi + fprintf(fs, "extern \"C\" "); + + char *p; + for (p = cur_func_result->signature; !(*p == ' ' && *(p+1) == '('); p++) { + fprintf(fs, "%c", *p); + } + p++; + + fprintf(fs, "_(int run_where"); + p++; + if (*p != ')') { + fprintf(fs, ", "); + } + for (; *p != ')'; p++) { + fprintf(fs, "%c", *p); + } + fprintf(fs, ") {\n"); + + if (return_array_str != NULL && *return_array_str != 0) { + // if the return is an array, that array space must have been allocated in the Julia heap, and the pointer + // and the size of the array (# array elements) must be passed to C function so that we can fill contents into the space. + + fprintf(fs, "if (run_where >= 0) {\n"); + fprintf(fs, "%s ret_return;\n", return_array_str); + fprintf(fs, "%s ret_temp;\n", return_array_str); +#ifndef ICC13 + fprintf(fs, "%s ret_temp2;\n", return_array_str); +#endif + fprintf(fs, "int prod_index;\n"); + fprintf(fs, "int outsize;\n"); + + fprintf(fs, "#pragma offload %s inout(out_ret_dims:length(num_dims)) nocopy(ret_temp)\n{\n", offload_clauses); + fprintf(fs, "ret_temp = ", return_array_str); + dump_a_call_to_root_func(fs); + fprintf(fs, "}\n"); + fprintf(fs, "outsize = out_ret_dims[0];\n"); + fprintf(fs, "for(prod_index = 1; prod_index < num_dims; ++prod_index) outsize *= out_ret_dims[prod_index];\n"); + fprintf(fs, "%s just_for_size;\n",return_array_str); + fprintf(fs, "int array_elem_size = sizeof(*just_for_size);\n"); + fprintf(fs, "ret_return = (%s)malloc(outsize * array_elem_size);\n",return_array_str); +#ifdef ICC13 + fprintf(fs, "#pragma offload in(outsize) out(ret_return[0:outsize]) nocopy(ret_temp)\n{\n"); + fprintf(fs, "memcpy(ret_return,ret_temp,outsize * array_elem_size);\n"); + //fprintf(fs, "free(ret_temp);\n"); + fprintf(fs, "}\n"); +#else + fprintf(fs, "#pragma offload out(ret_temp2[0:outsize] : into(ret_return[0:outsize]) alloc_if(1) preallocated targetptr) nocopy(ret_temp)\n{\n"); + fprintf(fs, "ret_temp2 = ret_temp;\n"); + //fprintf(fs, "free(ret_temp);\n"); + fprintf(fs, "}\n"); +#endif + fprintf(fs, "return ret_return;\n"); + + fprintf(fs, "} else {\n"); + fprintf(fs, "return "); + dump_a_call_to_root_func(fs); + fprintf(fs, "}\n"); + } + else { + assert(return_non_array_str != NULL && *return_non_array_str != 0); + + fprintf(fs, "if (run_where >= 0) {\n"); + fprintf(fs, "%s ret_return;\n", return_non_array_str); + fprintf(fs, "#pragma offload target(mic) %s out(ret_return)\n{\n", offload_clauses); + fprintf(fs, "ret_return = "); + dump_a_call_to_root_func(fs); + fprintf(fs, "}\n"); + fprintf(fs, "return ret_return;\n"); + fprintf(fs, "} else {\n"); + fprintf(fs, "return "); + dump_a_call_to_root_func(fs); + fprintf(fs, "}\n"); + } + fprintf(fs, "}\n"); +} + +// Find out what header files to include +static void find_includes() +{ + // For simplicity, just include the several commonly used ones. + // TODO: find out headers based on functions. + // Alternative: build a precompile header file that includes all the possible headers + char* str; + NEW_C_CODE_2(str, "<omp.h>"); + includes.push_back(str); + +// NEW_C_CODE_2(str, "<mkl.h>"); +// includes.push_back(str); + + NEW_C_CODE_2(str, "<stdint.h>"); + includes.push_back(str); + +// NEW_C_CODE_2(str, "\"offload.h\""); +// includes.push_back(str); + + NEW_C_CODE_2(str, "<math.h>"); + includes.push_back(str); + + char *home = getenv("JULIA_ROOT"); + + NEW_C_CODE_3(str, "\"%s/test/j2c/pse-types.h\"", home); + includes.push_back(str); + + NEW_C_CODE_3(str, "\"%s/test/j2c/pse-types.c\"", home); + includes.push_back(str); +} + +static void dump_includes_types(FILE* fs) +{ + for (size_t i = 0; i < includes.size(); i++) { + fprintf(fs, "#include %s\n", includes[i]); + } + + fprintf(fs, "\n#ifdef DEBUGJ2C\n#include <stdio.h>\n#endif\n\n"); + + for (size_t i = 0; i < types_declaration.size(); i++) { + fprintf(fs, "%s", types_declaration[i]); + } +} + +static void j2c_copy(ast_node_result_t* l, char *r) +{ +#ifdef MIN_TEMPS + l->is_constant = true; + l->constant = r; +#else + NEW_C_CODE_4(l->epilog, "%s = %s;\n", result_variable_string(l), r); +#endif +} + +static void j2c_create_func_signature(jl_lambda_info_t *lam, jl_expr_t *ast, jl_codectx_t *ctx) +{ + std::string funcName = lam->name->name; + char *func_id_name = c_identifier(funcName.c_str()); + char *module_name = lam->module->name->name; + + // For arrays: for the root func, prepend a _ in its name + // For non-root funcs, arrays have already been wrapped into *_array. + char *str, *offload; + std::stringstream extra_dimension_args; + ast_node_result_t* result = get_ast_node_result((jl_value_t *)ast, ctx); + bool is_root_func = result->is_root_func; + jl_value_t *jlrettype = jl_ast_rettype(lam, (jl_value_t*)ast); + bool return_array = jl_is_array_type(jlrettype); + if (is_root_func) { + if (return_array) { sprintf(return_array_str, "%s", type_name(jlrettype)); *return_non_array_str = '\0'; } + else { *return_array_str = '\0'; sprintf(return_non_array_str, "%s", type_name(jlrettype)); } + NEW_C_CODE_4(result->signature, "%s %s (", type_name(jlrettype), func_id_name); + offload = offload_clauses; + } else { + if (return_array) { + NEW_C_CODE_5(result->signature, "%s_array julia_%s_%s(", + c_identifier(element_type_name(jlrettype)), module_name, func_id_name); + + } else { + NEW_C_CODE_5(result->signature, "%s julia_%s_%s(", + type_name(jlrettype), module_name, func_id_name); + } + } + + jl_array_t *largs = jl_lam_args(ast); + size_t largslen = jl_array_dim0(largs); + size_t array_dims_index = 1; + for(size_t i=0; i < largslen; i++) { + jl_value_t *jt = jl_tupleref(lam->specTypes,i); + bool is_array = jl_is_array_type(jt); + jl_sym_t *s = jl_decl_var(jl_cellref(largs,i)); + if (i > 0) { + CONTINUE_C_CODE_2(str, ", "); + } + if (!is_root_func && is_array) { + CONTINUE_C_CODE_4(str, "%s_array %s", element_type_name(jt), c_identifier(s->name)); + } else { + CONTINUE_C_CODE_5(str, "%s %s%s", type_name(jt), is_array ? "_" : "", c_identifier(s->name)); + } + + if (is_root_func && is_array) { + // Add the dimensions of the array + jl_value_t *p1 = jl_tparam1(jt); + assert(jl_is_long(p1)); + + size_t nd = jl_unbox_long(p1); + if (argument_inout(s, ctx)) { + sprintf(offload, "inout(_%s:length(", c_identifier(s->name)); + } else { + sprintf(offload, "in(_%s:length(", c_identifier(s->name)); + } + offload += strlen(offload); + + for (size_t j = 0; j < nd; j++) { + if (j == 0) { + sprintf(offload, "__N%ld", array_dims_index); + } else { + sprintf(offload, "*__N%ld", array_dims_index); + } + offload += strlen(offload); + extra_dimension_args << ", int64_t __N" << array_dims_index++; + //CONTINUE_C_CODE_3(str, ", int64_t __N%ld", array_dims_index++); + } + sprintf(offload, ")) "); + offload += strlen(offload); + assert(offload - offload_clauses + 2 <= MAX_OFFLOAD_CLAUSES_LEN); + } + } + CONTINUE_C_CODE_3(str,"%s", extra_dimension_args.str().c_str()); + if(return_array && is_root_func) { + CONTINUE_C_CODE_2(str,", int32_t num_dims, int32_t * out_ret_dims"); + } + CONTINUE_C_CODE_3(str,"%s", ")"); +} + +static void j2c_unary_scalar_op(jl_value_t *ast_node, const char* op, jl_value_t *x, jl_codectx_t *ctx, type_conversion_t TC) +{ + // TODO: handle TC + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* x1 = get_ast_node_result(x, ctx); + CONNECT_PARENT_CHILD(result, x1); + + if (!strcmp(op, "not_int")) { + // bitwise negation. But if it is for boolean, just do ! + if (x1->result_var_type == (jl_value_t*)jl_bool_type) { + NEW_C_CODE_3(scratch_str, "!(%s)", result_variable_string(x1)); + } else { + NEW_C_CODE_3(scratch_str, "(uint32_t)(%s) ^ (uint32_t)(-1)", result_variable_string(x1)); + } + } else { + NEW_C_CODE_4(scratch_str, "%s (%s)", op, result_variable_string(x1)); + } + j2c_copy(result, scratch_str); +} + +static void j2c_binary_scalar_op(jl_value_t *ast_node, jl_value_t *x, const char* op, jl_value_t* y, +jl_codectx_t *ctx, type_conversion_t TC) +{ + // TODO: handle TC + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* x1 = get_ast_node_result(x, ctx); + ast_node_result_t* y1 = get_ast_node_result(y, ctx); + CONNECT_PARENT_CHILD(result, x1); + CONNECT_PARENT_CHILD(result, y1); + + NEW_C_CODE_5(scratch_str, "(%s) %s (%s)", result_variable_string(x1), op, result_variable_string(y1)); + j2c_copy(result, scratch_str); +} + +static void j2c_checked_add_sub_mul(const char *intrinsic_name, jl_value_t *ast_node, jl_value_t *x, jl_value_t* y, +jl_codectx_t *ctx) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* x1 = get_ast_node_result(x, ctx); + ast_node_result_t* y1 = get_ast_node_result(y, ctx); + CONNECT_PARENT_CHILD(result, x1); + CONNECT_PARENT_CHILD(result, y1); + + NEW_C_CODE_5(scratch_str, "%s(%s, %s)", intrinsic_name, result_variable_string(x1), result_variable_string(y1)); + j2c_copy(result, scratch_str); +} + +static void j2c_sitofp(jl_value_t *ast_node, jl_value_t *f, jl_value_t* i, jl_codectx_t *ctx, type_conversion_t TC) +{ + // f is a type like "Float64". i is an integer value. + + // TODO: handle TC and fp precision indicated by f + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* f1 = get_ast_node_result(f, ctx); + ast_node_result_t* i1 = get_ast_node_result(i, ctx); + CONNECT_PARENT_CHILD(result, f1); + CONNECT_PARENT_CHILD(result, i1); + + NEW_C_CODE_3(scratch_str, "(double)(%s)", result_variable_string(i1)); + j2c_copy(result, scratch_str); +} + +static void j2c_fpext(jl_value_t *ast_node, jl_value_t *d, jl_value_t* f, jl_codectx_t *ctx, type_conversion_t TC) +{ + // d is a type like "Float64". f is a value. + + // TODO: handle TC and fp precision indicated by f + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* f1 = get_ast_node_result(f, ctx); + ast_node_result_t* d1 = get_ast_node_result(d, ctx); + CONNECT_PARENT_CHILD(result, f1); + CONNECT_PARENT_CHILD(result, d1); + + NEW_C_CODE_3(scratch_str, "(double)(%s)", result_variable_string(f1)); + j2c_copy(result, scratch_str); +} + +// select_value(c, u, v) is translated to c ? u : v; +static void j2c_select_value(jl_value_t *ast_node, jl_value_t *c, jl_value_t* u, jl_value_t* v, jl_codectx_t *ctx) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* c1 = get_ast_node_result(c, ctx); + ast_node_result_t* u1 = get_ast_node_result(u, ctx); + ast_node_result_t* v1 = get_ast_node_result(v, ctx); + CONNECT_PARENT_CHILD(result, c1); + CONNECT_PARENT_CHILD(result, u1); + CONNECT_PARENT_CHILD(result, v1); + + NEW_C_CODE_5(scratch_str, "(%s)?(%s):(%s)", result_variable_string(c1), result_variable_string(u1), result_variable_string(v1)); + j2c_copy(result, scratch_str); + +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + JL_PRINTF(JL_STDOUT, "** select_value: %s\n", scratch_str); + } +#endif +} + +// TODO: merge this func with fpext, as they are basically the same structure +static void j2c_fptrunc(jl_value_t *ast_node, jl_value_t *f, jl_value_t* d, jl_codectx_t *ctx, type_conversion_t TC) +{ + // d is a type like "Float64". f is a value. + + // TODO: handle TC and fp precision indicated by f + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* f1 = get_ast_node_result(f, ctx); + ast_node_result_t* d1 = get_ast_node_result(d, ctx); + CONNECT_PARENT_CHILD(result, f1); + CONNECT_PARENT_CHILD(result, d1); + + NEW_C_CODE_3(scratch_str, "(float)(%s)", result_variable_string(d1)); + j2c_copy(result, scratch_str); + +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + JL_PRINTF(JL_STDOUT, "** fptrunc: %s\n", scratch_str); + } +#endif +} + +static void j2c_box_unbox(jl_value_t *ast_node, jl_value_t *targ, jl_value_t *x, jl_codectx_t *ctx) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* x1 = get_ast_node_result(x, ctx); + CONNECT_PARENT_CHILD(result, x1); + + jl_value_t* et = expr_type(targ, ctx); + ASSERT(!jl_is_array_type(et), ast_node, "box of array not handled"); + + if (jl_is_type_type(et)) { + jl_value_t *p = jl_tparam0(et); + if (jl_is_leaf_type(p)) { + // in case the corresponding c type has not been created + create_c_type(p); + NEW_C_CODE_4(scratch_str, "(%s)(%s)", type_name(p), result_variable_string(x1)); + j2c_copy(result, scratch_str); + goto end_box_unbox; + } + } + ASSERT(false, et, "box-unbox: unhandled type"); + +end_box_unbox: ; +} + +static void j2c_nan_dom_err(jl_value_t *ast_node, jl_value_t *x, jl_value_t *y, jl_codectx_t *ctx) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* x1 = get_ast_node_result(x, ctx); + CONNECT_PARENT_CHILD(result, x1); + ast_node_result_t* y1 = get_ast_node_result(y, ctx); + + // x and y must be float scalar. So directly copy + ASSERT(!jl_is_array_type(result->result_var_type), ast_node, "nan_dom_err: result must be scalar"); + ASSERT(!jl_is_array_type(x1->result_var_type), ast_node, "nan_dom_err: input must be scalar"); + + // Rather than throw, we can use assert, which enables us to generate a release and test version of C code +/* NEW_C_CODE_6(result->epilog, "if (isnan(%s) && !isnan(%s)) {\nthrow domain_error(\"Nan domain error\");\n}%s = %s;\n", + result_variable_string(x1), + result_variable_string(y1), + result_variable_string(result), + result_variable_string(x1) + ); */ + NEW_C_CODE_6(result->epilog, "assert(!isnan(%s) || isnan(%s));\n%s = %s;\n", + result_variable_string(x1), + result_variable_string(y1), + result_variable_string(result), + result_variable_string(x1) + ); + + // TODO: In AST, move any exception inlcuding nan_dom_err + // to a wrapper function, so that this function can be optimized aggressively. Question: if + // instead, we put these statements into try catch in this function, can this function still be + // be optimized aggressively? +} + +static bool j2c_special_ccall(char *f_name, char *f_lib, jl_value_t **args, size_t nargs, jl_codectx_t *ctx, jl_value_t* ast_node) +{ + if (f_lib==NULL && f_name && !strcmp(f_name,"jl_alloc_array_1d")) { + assert(nargs == 7); + jl_value_t *array_type = args[4]; + jl_value_t *array_size = args[6]; + + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* size = get_ast_node_result(array_size, ctx); + CONNECT_PARENT_CHILD(result, size); + + char* etype_name = element_type_name(array_type); + NEW_C_CODE_5(result->epilog, "%s = new_%s_array_1d(NULL, %s);\n", + result_variable_string(result), c_identifier(etype_name), result_variable_string(size)); + + cur_func_result->local_arrays.push_back(result->result_var); + return true; + } + + if (f_lib==NULL && f_name && !strcmp(f_name,"jl_alloc_array_2d")) { + assert(nargs == 9); + jl_value_t *array_type = args[4]; + jl_value_t *array_size1 = args[6]; + jl_value_t *array_size2 = args[8]; + + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* size1 = get_ast_node_result(array_size1, ctx); + ast_node_result_t* size2 = get_ast_node_result(array_size2, ctx); + CONNECT_PARENT_CHILD(result, size1); + CONNECT_PARENT_CHILD(result, size2); + + char* etype_name = element_type_name(array_type); + NEW_C_CODE_6(result->epilog, "%s = new_%s_array_2d(NULL, %s, %s);\n", + result_variable_string(result), c_identifier(etype_name), result_variable_string(size1), result_variable_string(size2)); + + cur_func_result->local_arrays.push_back(result->result_var); + return true; + } + + if (f_lib==NULL && f_name && !strcmp(f_name,"jl_new_array")) { + assert(nargs == 7); + jl_value_t *array_type_data = expr_type(args[2], ctx); + assert(jl_is_datatype(array_type_data)); + + jl_datatype_t *dv = (jl_datatype_t*)array_type_data; + assert(!strcmp(dv->name->name->name, "Type")); + assert(dv->parameters); + assert(jl_tuple_len(dv->parameters) == 1); + + jl_value_t *array_type = jl_tupleref(dv->parameters, 0); + + jl_value_t *array_size = args[6]; + + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* size = get_ast_node_result(array_size, ctx); + CONNECT_PARENT_CHILD(result, size); + + jl_value_t* size_type = size->result_var_type; + ASSERT(jl_is_tuple(size_type), size_type, "Tuple expected for the size in jl_new_array"); + + char* etype_name = element_type_name(array_type); + size_t nd = jl_tuple_len(size_type); + NEW_C_CODE_5(result->epilog, "%s = new_%s_array_%dd(NULL", result_variable_string(result), c_identifier(etype_name), nd); + size_t i; + for (i = 0; i < nd; i++) { + CONTINUE_C_CODE_4(scratch_str, ", %s.f%d", result_variable_string(size), i+1); + } +// for (; i < MAX_ARRAY_DIMS; i++) { +// CONTINUE_C_CODE_2(scratch_str, ", 1"); +// } + + CONTINUE_C_CODE_2(scratch_str, ");\n"); + cur_func_result->local_arrays.push_back(result->result_var); + return true; + } + + return false; +} + +static void j2c_ccall(char *f_name, char *f_lib, Value *jl_ptr, void *fptr, jl_value_t **args, size_t nargs, jl_codectx_t *ctx, jl_value_t* ast_node) +{ + // TODO: handle jl_ptr and fptr case. + assert(jl_ptr == NULL); + assert(fptr == NULL); + + // Handle some special calls separately + if (j2c_special_ccall(f_name, f_lib, args, nargs, ctx, ast_node)) return; + + // TODO: use f_lib to add link directives like "-lm" for linking. + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + char *func_id_name = c_identifier(f_name); + NEW_C_CODE_4(result->epilog, "%s = %s(", result_variable_string(result), func_id_name); + char* str; + for(size_t i=4; i < nargs+1; i+=2) { + jl_value_t *argi = args[i]; + if (jl_is_expr(argi) && ((jl_expr_t*)argi)->head == amp_sym) { + argi = jl_exprarg(argi,0); + } + ast_node_result_t* a = get_ast_node_result(argi, ctx); + CONNECT_PARENT_CHILD(result, a); + + PREPARE_TO_CONTINUE_C_CODE; + if (i == 4) { + NEW_C_CODE_3(str, "%s", result_variable_string(a)); + } else { + NEW_C_CODE_3(str, ", %s", result_variable_string(a)); + } + } + PREPARE_TO_CONTINUE_C_CODE; + NEW_C_CODE_2(str, ");\n"); +} + +static void j2c_known_call(jl_function_t *ff, jl_value_t **args, size_t nargs, jl_codectx_t *ctx, jl_value_t *expr) +{ + if (!jl_is_symbol(args[0])) { + WARN(false, args[0], "j2c_known_call: args[0] is not a symbol. NOT handled. Check if IR is correct."); + } else { + jl_sym_t *sym = (jl_sym_t*)args[0]; + if (!strcmp(sym->name, "colon")) { + if (nargs == 2) { + ast_node_result_t* result = get_ast_node_result(expr, ctx); + ast_node_result_t* start = get_ast_node_result(args[1], ctx); + ast_node_result_t* stop = get_ast_node_result(args[2], ctx); + CONNECT_PARENT_CHILD(result, start); + CONNECT_PARENT_CHILD(result, stop); + + char *str; + NEW_C_CODE_5(str, "(%s) {%s, %s}", type_name(result->result_var_type), result_variable_string(start), result_variable_string(stop)); + j2c_copy(result, str); + return; + } + } + if (!strcmp(sym->name, "promote_shape")) { + ast_node_result_t* result = get_ast_node_result(expr, ctx); + ast_node_result_t* shape1 = get_ast_node_result(args[1], ctx); + ast_node_result_t* shape2 = get_ast_node_result(args[2], ctx); + CONNECT_PARENT_CHILD(result, shape1); + CONNECT_PARENT_CHILD(result, shape2); + ast_node_result_t* shape_a = shape1; + + // TODO: This has to be a runtime function. Leave for future. + /* + jl_value_t *a = args[1]; + jl_value_t *b = args[2]; + size_t len_a = jl_tuple_len(a); + size_t len_b = jl_tuple_len(b); + if (len_a < len_b) { + a = args[2]; + b = args[1]; + len_a = jl_tuple_len(a); + len_b = jl_tuple_len(b); + shape_a = shape2; + } + assert(len_a > 0); + for (size_t i = 0; i < len_b; i++) { + if (i == 0) { + NEW_C_CODE_6(result->epilog, "assert(%s.f%d == %s.f%d);\n", jl_tupleref(a, i), i, jl_tupleref(b, i), i); + } else { + char *str; + CONTINUE_C_CODE_6(str, "assert(%s.f%d == %s.f%d);\n", jl_tupleref(a, i), i, jl_tupleref(b, i), i); + } + } + for (size_t i = len_b; i < len_a; i++) { + if (i == 0) { + NEW_C_CODE_4(result->epilog, "assert(%s.f%d == 1);\n", jl_tupleref(a, i), i); + } else { + char *str; + CONTINUE_C_CODE_4(str, "assert(%s.f%d == 1);\n", jl_tupleref(a, i), i); + } + } + */ + + char *str; + NEW_C_CODE_3(str, "%s", result_variable_string(shape_a)); + j2c_copy(result, str); + return; + } + else { + // We should have generated these functions + ast_node_result_t* result = get_ast_node_result(expr, ctx); + std::vector<char*> strs; + //std::vector<jl_value_t*> types; + for (size_t i = 1; i <= nargs; i++) { + ast_node_result_t* a = get_ast_node_result(args[i], ctx); + strs.push_back(result_variable_string(a)); //result_variable_string may modify c code buffer, that is why we have to get all arguments strings beforehand + } + + char *start, *str; + NEW_C_CODE_4(start, "julia_%s_%s(", ff->linfo->module->name->name, c_identifier(sym->name)); + for (size_t i = 1; i <= nargs; i++) { + ast_node_result_t* a = get_ast_node_result(args[i], ctx); + CONNECT_PARENT_CHILD(result, a); + if (i > 1) { + CONTINUE_C_CODE_2(str, ","); + } + CONTINUE_C_CODE_3(str, " %s", strs[i - 1]); + } + CONTINUE_C_CODE_2(str, ")"); + j2c_copy(result, start); + +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { +// JL_PRINTF(JL_STDOUT, "** other known call: %s\n", start); + } +#endif + return; + } + } +} + +static void j2c_throw(jl_codectx_t *ctx, jl_value_t* ast_node) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + NEW_C_CODE_2(result->epilog, "assert(false);\n"); +} + +static void j2c_is(jl_value_t *arg1, jl_value_t *arg2, jl_codectx_t *ctx, jl_value_t* ast_node) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* a1 = get_ast_node_result(arg1, ctx); + ast_node_result_t* a2 = get_ast_node_result(arg2, ctx); + CONNECT_PARENT_CHILD(result, a1); + CONNECT_PARENT_CHILD(result, a2); + + char *str; + NEW_C_CODE_4(str, "%s == %s", result_variable_string(a1), result_variable_string(a2)); + j2c_copy(result, str); +} + +static void j2c_assignment(jl_value_t *l, jl_value_t *r, jl_codectx_t *ctx, jl_value_t *ast_node) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* left = get_ast_node_result(l, ctx); + ast_node_result_t* right = get_ast_node_result(r, ctx); + CONNECT_PARENT_CHILD(result, left); + CONNECT_PARENT_CHILD(result, right); + + j2c_copy(result, left, right, ctx); +} + +// return a tuple containing the dimensions of the array +static void j2c_arraysize(jl_value_t *a, uint32_t index, jl_codectx_t *ctx, jl_value_t *ast_node) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* a1 = get_ast_node_result(a, ctx); + CONNECT_PARENT_CHILD(result, a1); + + NEW_C_CODE_4(scratch_str, "ARRAYSIZE(%s, %d)", result_variable_string(a1), index); + j2c_copy(result, scratch_str); +} + +// return the number of elements in an array +static void j2c_arraylen(jl_value_t *a, jl_codectx_t *ctx, jl_value_t *ast_node) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* a1 = get_ast_node_result(a, ctx); + CONNECT_PARENT_CHILD(result, a1); + + NEW_C_CODE_3(scratch_str, "ARRAYLEN(%s)", result_variable_string(a1)); + j2c_copy(result, scratch_str); +} + +static void j2c_tuple(jl_value_t *e, size_t n, jl_codectx_t *ctx, jl_value_t *type) +{ + ast_node_result_t* result = get_ast_node_result(e, ctx); + char *start, *str; + NEW_C_CODE_4(result->epilog, "%s = (%s) {", result_variable_string(result), type_name(type)); + for (size_t i = 0; i < n; i++) { + jl_value_t* arg = jl_exprarg(e,i+1); + ast_node_result_t* arg1 = get_ast_node_result(arg, ctx); + CONNECT_PARENT_CHILD(result, arg1); + if (i == 0) CONTINUE_C_CODE_3(str, "%s", result_variable_string(arg1)) + else CONTINUE_C_CODE_3(str, ", %s", result_variable_string(arg1)) + } + CONTINUE_C_CODE_2(str, "};\n"); + //j2c_copy(result, start); +} + +static void j2c_tupleref(jl_value_t *arg1, jl_value_t *arg2, jl_codectx_t *ctx, jl_value_t *ast_node) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* a1 = get_ast_node_result(arg1, ctx); + ast_node_result_t* a2 = get_ast_node_result(arg2, ctx); + CONNECT_PARENT_CHILD(result, a1); + CONNECT_PARENT_CHILD(result, a2); + + char *str; + NEW_C_CODE_4(str, "%s.f%s", result_variable_string(a1), result_variable_string(a2)); + j2c_copy(result, str); +} + +// TODO: looks this function is not necessary +static void j2c_condition(jl_value_t *cond, int value, jl_codectx_t *ctx) +{ + ast_node_result_t* cond1 = get_ast_node_result(cond, ctx); + NEW_C_CODE_4(cond1->epilog, "%s = %d;\n", result_variable_string(cond1), value); +} + +static void j2c_gotoifnot(jl_value_t *cond, int labelname, jl_codectx_t *ctx, jl_value_t *ast_node) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* cond1 = get_ast_node_result(cond, ctx); + CONNECT_PARENT_CHILD(result, cond1); + + NEW_C_CODE_4(result->epilog, "if (!(%s)) goto label%d;\n", result_variable_string(cond1), labelname); +} + +static void j2c_labelnode(jl_value_t *expr, jl_codectx_t *ctx) +{ + ast_node_result_t* result = get_ast_node_result(expr, ctx); + int labelname = jl_labelnode_label(expr); + NEW_C_CODE_3(result->prolog, "label%d:\n", labelname); +} + +static void j2c_body(jl_value_t *body, jl_codectx_t *ctx) +{ + ast_node_result_t* result = get_ast_node_result(body, ctx); + + for (size_t j = 0; j < jl_array_len(body); j++) { + jl_value_t *stmt; + if (((jl_array_t*)body)->ptrarray) + stmt = jl_cellref(body, j); + else + stmt = jl_arrayref((jl_array_t*)body,j); + + ast_node_result_t* stmt1 = get_ast_node_result(stmt, ctx); + CONNECT_PARENT_CHILD(result, stmt1); + } +} + +static void j2c_array_ptr(jl_value_t *ast_node, jl_value_t **args, jl_codectx_t *ctx) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* array = get_ast_node_result(args[4], ctx); + CONNECT_PARENT_CHILD(result, array); + + NEW_C_CODE_3(scratch_str, "(%s).data", result_variable_string(array)); + j2c_copy(result, scratch_str); +} + +static void j2c_linenode(jl_value_t *expr, jl_codectx_t *ctx) +{ + ast_node_result_t* result = get_ast_node_result(expr, ctx); + int lno = jl_linenode_line(expr); + if (cur_source_file != NULL) { + NEW_C_CODE_4(result->prolog, "\n# %d \"%s\"\n", lno, cur_source_file->name); + } else { + NEW_C_CODE_3(result->prolog, "\n# %d \n", lno); + } +} + +// Note: line sym is not line node +static void j2c_linesym(jl_value_t *expr, jl_codectx_t *ctx) +{ + int32_t line = jl_unbox_long(jl_exprarg(expr, 0)); + jl_sym_t *file = (jl_sym_t*)jl_exprarg(expr, 1); + cur_source_file = file; + + ast_node_result_t* result = get_ast_node_result(expr, ctx); + NEW_C_CODE_4(result->prolog, "\n# %d \"%s\"\n", line, file->name); +} + +static char* get_subscript(ast_node_result_t* a, size_t nd, jl_value_t **args, size_t nidxs, jl_codectx_t *ctx) +{ + assert(nidxs > 0); + assert(nidxs <= 2); //so far, pse-types.h defines up to 2D array, but it can extended to arbitrary dimensions. + + size_t k; + for(k=0; k < nidxs; k++) { + ast_node_result_t* argk = get_ast_node_result(args[k], ctx); + if(k == 0) { + NEW_C_CODE_3(scratch_str, "%s", result_variable_string(argk)); + } else { + CONTINUE_C_CODE_3(scratch_str1, ", %s", result_variable_string(argk)); + } + } +/* for(; k < 2; k++) { + CONTINUE_C_CODE_2(scratch_str1, ", 1"); + } */ + return scratch_str; +} + +static void j2c_arrayset(jl_value_t *a, jl_value_t *v, size_t nd, jl_value_t **args, +size_t nidxs, jl_codectx_t *ctx, jl_value_t *ast_node, bool inbounds) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* a1 = get_ast_node_result(a, ctx); + ast_node_result_t* v1 = get_ast_node_result(v, ctx); + CONNECT_PARENT_CHILD(result, a1); + CONNECT_PARENT_CHILD(result, v1); + char* subscript = get_subscript(a1, nd, args, nidxs, ctx); +#if CHECK_BOUNDS==1 + bool bc = !inbounds && (ctx->boundsCheck.empty() || ctx->boundsCheck.back()==true); + if (bc) { + NEW_C_CODE_4(result->epilog, "ARRAYBOUNDSCHECK(%s, %s);\n", + result_variable_string(a1), subscript); + CONTINUE_C_CODE_5(scratch_str, "ARRAYELEM(%s, %s) = %s;\n", + result_variable_string(a1), subscript, result_variable_string(v1)); + goto end_arrayset; + } +#endif + + NEW_C_CODE_5(result->epilog, "ARRAYELEM(%s, %s) = %s;\n", + result_variable_string(a1), subscript, result_variable_string(v1)); + +end_arrayset: ; +// JL_PRINTF(JL_STDOUT, "** arrayset: %s\n", result->epilog); +} + +static void j2c_arrayref(jl_value_t *a, size_t nd, jl_value_t **args, +size_t nidxs, jl_codectx_t *ctx, jl_value_t *ast_node, bool inbounds) +{ + ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* a1 = get_ast_node_result(a, ctx); + CONNECT_PARENT_CHILD(result, a1); + char* subscript = get_subscript(a1, nd, args, nidxs, ctx); +#if CHECK_BOUNDS==1 + bool bc = !inbounds && (ctx->boundsCheck.empty() || ctx->boundsCheck.back()==true); + if (bc) { + NEW_C_CODE_4(result->epilog, "ARRAYBOUNDSCHECK(%s, %s);\n", + result_variable_string(a1), subscript); + CONTINUE_C_CODE_5(scratch_str, "%s = ARRAYELEM(%s, %s);\n", result_variable_string(result), + result_variable_string(a1), subscript); + goto end_arrayref; + } +#endif + NEW_C_CODE_4(scratch_str, "ARRAYELEM(%s, %s)", result_variable_string(a1), subscript); + j2c_copy(result, scratch_str); + +end_arrayref: ; +// JL_PRINTF(JL_STDOUT, "** arrayref: %s\n", scratch_str); +} + +static void j2c_goto(jl_value_t *expr, jl_codectx_t *ctx) +{ + ast_node_result_t* result = get_ast_node_result(expr, ctx); + int labelname = jl_gotonode_label(expr); + NEW_C_CODE_3(result->prolog, "goto label%d;\n", labelname); + +// JL_PRINTF(JL_STDOUT, "** goto: %s\n", result->prolog); +} + +static void j2c_return(jl_value_t *stmt, jl_codectx_t *ctx, bool is_root_func) +{ + ast_node_result_t *t = get_ast_node_result(stmt, ctx); + jl_expr_t *ex = (jl_expr_t*)stmt; + jl_value_t *arg = jl_exprarg(ex,0); + ast_node_result_t *t1 = get_ast_node_result(arg, ctx); + CONNECT_PARENT_CHILD(t, t1); + bool is_null_return = t1->ast_node != NULL && jl_is_tuple(t1->ast_node) && jl_tuple_len(t1->ast_node)==0; + char * return_var_name = is_null_return ? (char*)"" : result_variable_string(t1); + bool is_array = (jl_is_array_type(t1->result_var_type) && !t1->made_scalar); + + char * str; + NEW_C_CODE_2(t->return_statement, "\n#ifdef DEBUGJ2C\n"); + if (jl_is_array_type(t1->result_var_type)) { + if (t1->made_scalar) { +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + CONTINUE_C_CODE_3(str, "printf(\"Return is: %%e\\n\",%s);\n", return_var_name); + } +#endif + } else { +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + CONTINUE_C_CODE_4(str, "printf(\"Return is: %%e\\n\", sum_%s_array(%s));\n", + c_identifier(element_type_name(t1->result_var_type)), return_var_name); + } +#endif + } + } else { + //CONTINUE_C_CODE_3(str, "printf(\"Return is: %%e\\n\",%s);\n", return_var_name); + } + CONTINUE_C_CODE_2(str, "#endif\n\n"); + if (is_array && is_root_func) { + CONTINUE_C_CODE_2(str, "{ \n"); + CONTINUE_C_CODE_2(str, "int i;\n"); + CONTINUE_C_CODE_3(str, "for(i=0;i<%s.num_dim;++i)\n",return_var_name); + CONTINUE_C_CODE_3(str, "out_ret_dims[i] = %s.dims[i];\n",return_var_name); + CONTINUE_C_CODE_2(str, "} \n"); + CONTINUE_C_CODE_3(str, "return %s.data;\n", return_var_name); + } else { + CONTINUE_C_CODE_3(str, "return %s;\n", return_var_name); + } + if (is_array) { + cur_func_result->return_arrays.push_back(t1->result_var); + } +} + +static void j2c_getfield(jl_value_t *data, jl_binding_t **pbnd, jl_codectx_t *ctx, jl_value_t* ast_node) +{ + // we cannot handle unknown binding. + ASSERT(pbnd != NULL, ast_node, "Getfield: binding pointer must be known"); + ast_node_result_t *result = get_ast_node_result(ast_node, ctx); + char *str; + NEW_C_CODE_3(str, "%s", (*pbnd)->name->name); + j2c_copy(result, str); +} + +static void j2c_jlcall(jl_codectx_t *ctx, jl_value_t *expr) +{ + // we are compiling jl functions. So just call them + jl_expr_t *ex = (jl_expr_t*)expr; + jl_value_t **args = &jl_cellref(ex->args,0); + size_t nargs = jl_array_len(ex->args); + char *module_name = "Base"; // default module where symbol should resolve to + + if (jl_is_symbol(args[0])) { + jl_sym_t * sym = (jl_sym_t*)args[0]; + ast_node_result_t* result = get_ast_node_result(expr, ctx); + if (!strcmp(sym->name, "broadcast!")) { + ast_node_result_t* a1 = get_ast_node_result(args[1], ctx); + CONNECT_PARENT_CHILD(result, a1); + ast_node_result_t* a2 = get_ast_node_result(args[2], ctx); + CONNECT_PARENT_CHILD(result, a2); + NEW_C_CODE_4(result->epilog, "%s(%s", c_identifier(result_variable_string(a1)), result_variable_string(a2)); + for (size_t i = 3; i < nargs; i++) { + ast_node_result_t* a = get_ast_node_result(args[i], ctx); + CONNECT_PARENT_CHILD(result, a); + CONTINUE_C_CODE_3(scratch_str, ", %s", result_variable_string(a)); + } + CONTINUE_C_CODE_2(scratch_str, ");\n"); + CONTINUE_C_CODE_4(scratch_str, "%s = %s;\n", result_variable_string(result), result_variable_string(a2)); + return; + + } else { + char *start, *str; + NEW_C_CODE_4(start, "julia_%s_%s(", module_name, c_identifier(sym)); + for (size_t i = 1; i < nargs; i++) { + ast_node_result_t* a = get_ast_node_result(args[i], ctx); + CONNECT_PARENT_CHILD(result, a); + if (i == 1) { + CONTINUE_C_CODE_3(str, "%s", result_variable_string(a)); + } else { + CONTINUE_C_CODE_3(str, ", %s", result_variable_string(a)); + } + } + + CONTINUE_C_CODE_2(str, ")"); + j2c_copy(result, start); + return; + } + } else if (jl_is_getfieldnode(args[0])) { + // TODO: turn on the test of the modules of broadcast_shape + //if (!strcmp(jl_getfieldnode_val(args[0]), "Base.Broadcast")) { + if (!strcmp(jl_getfieldnode_name(args[0])->name, "broadcast_shape")) { + ast_node_result_t* result = get_ast_node_result(expr, ctx); + ast_node_result_t* shape1 = get_ast_node_result(args[1], ctx); + ast_node_result_t* shape2 = get_ast_node_result(args[2], ctx); + CONNECT_PARENT_CHILD(result, shape1); + CONNECT_PARENT_CHILD(result, shape2); + // TODO: generate assertions that the two input arrays of this function have + // exactly the same dimensions + + // ISSUE: Somehow, if you jl_is_array(shape1->result_var), you get a different answer + // from jl_is_array_type(shape1->result_var_type). The latter is correct. + if (jl_is_array_type(shape1->result_var_type)) { + jl_value_t* result_type = result->result_var_type; //expr_type(expr, ctx); + JL_PRINTF(JL_STDOUT, "&&& here is\n"); + jl_static_show(JL_STDOUT, result_type); + JL_PRINTF(JL_STDOUT, "&&& tttt is\n"); + jl_static_show(JL_STDOUT, expr_type(expr, ctx)); + // in case the corresponding c type has not been created + create_c_type(result_type); + ASSERT(jl_is_tuple(result_type), result_type, "Tuple type is expected to return from broadcast_shape"); + + NEW_C_CODE_4(result->epilog, "%s = (%s) {", result_variable_string(result), type_name(result_type)); + size_t nd = jl_tuple_len(result_type); + for (size_t i = 0; i < nd; i++) { + if (i > 0) CONTINUE_C_CODE_2(scratch_str, ","); + CONTINUE_C_CODE_4(scratch_str, " ARRAYSIZE(%s, %d)", result_variable_string(shape1), i + 1) + } + CONTINUE_C_CODE_2(scratch_str, "};\n"); + return; + } + } + //} + } + + J2C_UNIMPL("emit jlcall: others"); +} + +static void dump_func_signatures(FILE* fs) +{ + + fprintf(fs, "\n// Pre-declare all functions in case of recursive calls\n"); + for (size_t i = 0; i < functions.size(); i++) { + fprintf(fs, "%s;\n", functions[i]->signature); + } + fprintf(fs, "\n"); +} + +static void j2c_getfield(jl_value_t *data, jl_sym_t *name, jl_codectx_t *ctx, jl_value_t* ast_node) +{ + ast_node_result_t *result = get_ast_node_result(ast_node, ctx); + ast_node_result_t *d = get_ast_node_result(data, ctx); + char *str; + NEW_C_CODE_4(str, "%s.%s", result_variable_string(d), name->name); + j2c_copy(result, str); +} + +static void j2c_new_sym(jl_value_t *ty, size_t na, jl_value_t **args, jl_codectx_t *ctx, jl_value_t* ast_node) +{ + ast_node_result_t *result = get_ast_node_result(ast_node, ctx); + NEW_C_CODE_3(scratch_str, "(%s) {", type_name(ty)); + for(size_t i=0; i < na; i++) { + ast_node_result_t *a = get_ast_node_result(args[i+1], ctx); + CONNECT_PARENT_CHILD(result, a); + if (i == 0) { + CONTINUE_C_CODE_3(scratch_str1, "%s", result_variable_string(a)); + } else { + CONTINUE_C_CODE_3(scratch_str1, ", %s", result_variable_string(a)); + } + } + CONTINUE_C_CODE_2(scratch_str1, "}"); + j2c_copy(result, scratch_str); + +#ifdef J2C_VERBOSE + if (enable_j2c_verbose) { + JL_PRINTF(JL_STDOUT, "** new_sym: %s\n", scratch_str); + } +#endif +} + +int intel_j2c_mode = 1; +extern "C" DLLEXPORT +void set_j2c_mode(int value) { + printf("set_j2c_mode is deprecated!!!!!!!!!!!!\n"); + intel_j2c_mode = value; +} + +static void j2c_dump_all_funcs() +{ + // First, gather includes, and global types + find_includes(); + declare_types(); + + FILE* fs = fopen("temporary", "w"); + dump_includes_types(fs); + + dump_func_signatures(fs); + + for (size_t i = 0; i < functions.size(); i++) { + if (functions[i]->is_root_func) { + dump_entry_function(fs, functions[i]); + } + dump_func(fs, functions[i]); + } + + fclose(fs); + + char *home = getenv("JULIA_ROOT"); + + // We generate everything in C, but there is a problem: there can be polmorphic definitions + // of the functions with the same name. To handle this issue, we output the file as C++, + // to make use of its function overloading functionality. However, must guarantee that + // all the structs we generate are Plain Old Data (POD), so that we do not have offload issue + // to Xeon Phi. + char command[1000]; + sprintf(command,"bcpp temporary > %s/j2c/out.cpp 2> /dev/null", home); + if (system(command) == -1) { + JL_PRINTF(JL_STDOUT, "Beautifying output failed\n"); + sprintf(command,"mv temporary %s/j2c/out.cpp", home); + system(command); + } + system("rm -f temporary"); + + // Remove the output library so that if compilation fails it wno't silently run a previous version. + sprintf(command,"rm -f %s/j2c/libout.so.1.0", home); + system(command); + + //To debug the generate code, uncomment the following + bool debug_j2c = true; + // compile out.cpp + sprintf(command, "gcc -O3 -openmp -fpic -c -o %s/j2c/out.o %s/j2c/out.cpp %s", home, home, debug_j2c ? "-DDEBUGJ2C" : "", home); + system(command); + sprintf(command,"gcc -shared -Wl,-soname,libout.so.1 -o %s/j2c/libout.so.1.0 %s/j2c/out.o -lc", home, home); + system(command); +} + +// Boundscheck: this seems needed only by get_field. To do in future for emit_bounds_check() diff --git a/src/j2c.h b/src/j2c.h new file mode 100644 index 0000000000000..5753e1c3d162c --- /dev/null +++ b/src/j2c.h @@ -0,0 +1,98 @@ +#ifndef J2C_H +#define J2C_H + +// Minimize the temporaries generated in C +#define MIN_TEMPS + +// Verbose output during generating C +#define J2C_VERBOSE + +// Build a table mapping a type to its name string. +// Later we can generate C declarations of the types based on this table. + +/* Example: + * type struct1 + * a::Array{Float64, 2} + * b::Int64 + * end + * ==> + * entry is_field jt c_name + * 0 0 Float64 "double" + * 1 0 Array{Float64,2} "double*" + * 2 0 Int64 "int64" + * 3 0 struct1 "struct struct1" + * 4 1 2 (#fields of struct1) "" + * 5 1 1 (entry 1: first field) "a" + * 6 1 2 (entry 2: 2nd field) "b" + */ + +// Type in C. For an array, it is wrapped to the "*_array" struct defined in pse-types.h. +// If the array element type is "struct x", then array is "structx_array". So we also remember +// that prefix "structx" here. +typedef struct { + int is_field : 1; + int is_struct: 1; + int is_array : 1; + int declared : 1; // This type has already been written into a C file. + jl_value_t * jt; + char * c_name; // points to some position in the c_code buffer + char * array_prefix; // if is_array +} type_table_t; + + +typedef enum type_conversion { TC_FT, TC_FP, TC_INTT, TC_INT } type_conversion_t; + +// Every AST node has the folloowing struct to record its result, the +// C statements generated for it and its children nodes. We +// walk the AST tree, and gather all the info from this struct to compose +// the final C program. + +typedef struct _ast_node_result_t ast_node_result_t; +struct _ast_node_result_t{ + jl_value_t* ast_node; // the AST node this data structure is for + bool return_result; // if the result will be returned from the function + bool is_temporary; // it is a temporary variable if it is used exactly once + bool is_constant; + bool made_scalar; // make it a scalar variable if it is an array temporary var but can be a scalar after fusion + bool is_root_func; // if this is the ast node for a root function + jl_value_t* result_var; // result variable of this node. It must be either a symbol, or a constant + jl_value_t* result_var_type; + + // ast_node_results is a tree + ast_node_result_t* parent; + std::vector<ast_node_result_t*> precomputed_children; // the children that are not fused and must be pre-computed before this node + std::vector<ast_node_result_t*> children; // the other children + + ast_node_result_t* representative; + char* constant; // if is_constant + + char * prolog; // C statments before the children, but after the precomputed_children + char * epilog; // C statements after the children + char * return_statement; // C statement for return only + + // Only for a function AST node + char * signature; + std::vector<char*> local_vars_declaration; + std::vector<char*> arrays_initialization; + std::vector<jl_value_t*> return_arrays; + std::vector<jl_value_t*> local_arrays; // Remember this since all but one of the local arrays need to free their memory before the function returns + std::vector<std::pair<jl_value_t*, jl_value_t*> > aliased_arrays; // If A=B, then A and B are aliased + + std::string private_vars; + + // Below are info for fusion. + size_t num_dims_fused; // the number of dimensions fused, starting from the outermost dimension. +}; + +#define CONNECT_PARENT_CHILD(p, c) { \ + p->children.push_back(c); \ + c->parent = p; \ +} + +#define CONNECT_PARENT_PRECOMPUTED_CHILD(p, c) { \ + p->precomputed_children.push_back(c); \ + c->parent = p; \ +} + +extern bool j2c_arena_allocation; +#endif diff --git a/src/jltypes.c b/src/jltypes.c index b2b61cb53a491..ca353dc47bc21 100644 --- a/src/jltypes.c +++ b/src/jltypes.c @@ -2718,7 +2718,7 @@ extern void jl_init_int32_int64_cache(void); void jl_init_types(void) { // create base objects - jl_datatype_type = jl_new_uninitialized_datatype(14); + jl_datatype_type = jl_new_uninitialized_datatype(15); jl_datatype_type->type = (jl_value_t*)jl_datatype_type; jl_typename_type = jl_new_uninitialized_datatype(4); jl_sym_type = jl_new_uninitialized_datatype(0); @@ -2993,7 +2993,7 @@ void jl_init_types(void) jl_lambda_info_type = jl_new_datatype(jl_symbol("LambdaStaticData"), jl_any_type, jl_null, - jl_tuple(14, jl_symbol("ast"), jl_symbol("sparams"), + jl_tuple(15, jl_symbol("ast"), jl_symbol("sparams"), jl_symbol("tfunc"), jl_symbol("name"), jl_symbol("roots"), /* jl_symbol("specTypes"), @@ -3003,14 +3003,16 @@ void jl_init_types(void) jl_symbol("module"), jl_symbol("def"), jl_symbol("capt"), jl_symbol("file"), jl_symbol("line"), + jl_symbol("j2cflag"), jl_symbol("inferred")), - jl_tuple(14, jl_any_type, jl_tuple_type, + jl_tuple(15, jl_any_type, jl_tuple_type, jl_any_type, jl_sym_type, jl_any_type, jl_tuple_type, jl_any_type, jl_array_any_type, jl_module_type, jl_any_type, jl_any_type, jl_sym_type, jl_int32_type, + jl_int32_type, jl_bool_type), 0, 1); jl_lambda_info_type->fptr = jl_f_no_function; diff --git a/src/julia.expmap b/src/julia.expmap index 9cc43859c2c26..be35c1004e924 100644 --- a/src/julia.expmap +++ b/src/julia.expmap @@ -1,5 +1,6 @@ { global: + set_j2c_verbose; alloc_*w; allocobj; asprintf; diff --git a/src/julia.h b/src/julia.h index 6985d8bbd328a..de808e48944f3 100644 --- a/src/julia.h +++ b/src/julia.h @@ -146,6 +146,7 @@ typedef struct _jl_lambda_info_t { jl_value_t *capt; // captured var info jl_sym_t *file; int32_t line; + int32_t j2cflag; // high-to-low [j2c?][inline?] int8_t inferred; // hidden fields: @@ -160,6 +161,8 @@ typedef struct _jl_lambda_info_t { int32_t cFunctionID; // index that this cFunction will have in the codegen table } jl_lambda_info_t; +#define J2C_FLAG_J2C(flag) (((flag) & 0x2) == 0x2) + #define LAMBDA_INFO_NW (NWORDS(sizeof(jl_lambda_info_t))-1) #define JL_FUNC_FIELDS \ @@ -714,6 +717,7 @@ DLLEXPORT void *jl_unbox_voidpointer(jl_value_t *v); // structs DLLEXPORT int jl_field_index(jl_datatype_t *t, jl_sym_t *fld, int err); +DLLEXPORT jl_value_t *jl_get_field(jl_value_t *v, char *fld); DLLEXPORT jl_value_t *jl_get_nth_field(jl_value_t *v, size_t i); DLLEXPORT jl_value_t *jl_get_nth_field_checked(jl_value_t *v, size_t i); DLLEXPORT void jl_set_nth_field(jl_value_t *v, size_t i, jl_value_t *rhs); diff --git a/test/j2c.jl b/test/j2c.jl new file mode 100644 index 0000000000000..e7665a9b6bca7 --- /dev/null +++ b/test/j2c.jl @@ -0,0 +1,56 @@ +function getenv(var::String) + val = ccall( (:getenv, "libc"), Ptr{Uint8}, (Ptr{Uint8},), bytestring(var)) + if val == C_NULL + error("getenv: undefined variable: ", var) + end + bytestring(val) +end + +function inline(function_name, signature) + m = methods(function_name, signature) + if length(m) < 1 + error("Method for ", function_name, " with signature ", signature, " is not found") + end + def = m[1].func.code + if def.j2cflag & 2 == 2 + error("method for ", function_name, " with signature ", signature, " cannot be inlined because it requires J2C compilation") + end + def.j2cflag = convert(Int32, 1) +end + +function offload(function_name, signature) + m = methods(function_name, signature) + def = m[1].func.code + def.j2cflag = convert(Int32, 2) +end + +julia_root = getenv("JULIA_ROOT") +libname = string(julia_root, "/j2c/libout.so.1.0") +println(libname) + +function sumOfThree(N::Int) + a=[ (i*N+j)*11.0 for i=1:N, j=1:N] + b=[ (i*N+j)*22.0 for i=1:N, j=1:N] + c=[ (i*N+j)*33.0 for i=1:N, j=1:N] + d=a+b+c + return d +end + +offload(sumOfThree, (Int,)) +# warm up, will trigger j2c compilation, but will not run +sumOfThree(1) + +@eval function j2c_sumOfThree(N::Int) + ret_out_dims = zeros(Cint, 1) + result = ccall((:sumOfThree_, $(libname)), Ptr{Float64}, (Int, Int, Int, Ptr{Cint},), -1, N, 1, ret_out_dims) + rod64 = convert(Array{Int,1}, ret_out_dims) + reshape(pointer_to_array(result,prod(ret_out_dims),true),tuple(rod64...)) +end + +for sizea = 1:1 #100 + N = sizea * 1000 + println("\n****Matrix size: ", N, "*", N) + d=j2c_sumOfThree(N) + println("sum=", sum(d)) +end + diff --git a/test/j2c/pse-types.c b/test/j2c/pse-types.c new file mode 100644 index 0000000000000..b5df8fc361a6a --- /dev/null +++ b/test/j2c/pse-types.c @@ -0,0 +1,148 @@ +#define DEF_C_ARRAY(ELEMENT_TYPE, TYPENAME) \ +TYPENAME##_array inline new_##TYPENAME##_array_1d(ELEMENT_TYPE* _data, unsigned _N1) { \ + TYPENAME##_array a; \ + if (_data == NULL) a.data = (ELEMENT_TYPE*)malloc(sizeof(ELEMENT_TYPE)*_N1); \ + else a.data = _data; \ + a.num_dim = 1; \ + a.dims[0] = _N1; \ + return a; \ +} \ +TYPENAME##_array inline new_##TYPENAME##_array_2d(ELEMENT_TYPE* _data, unsigned _N1, unsigned _N2) { \ + TYPENAME##_array a; \ + if (_data == NULL) a.data = (ELEMENT_TYPE*)malloc(sizeof(ELEMENT_TYPE)*_N1*_N2); \ + else a.data = _data; \ + a.num_dim = 2; \ + a.dims[0] = _N1; \ + a.dims[1] = _N2; \ + return a; \ +} \ +TYPENAME##_array inline new_##TYPENAME##_array_3d(ELEMENT_TYPE* _data, unsigned _N1, unsigned _N2, unsigned _N3) { \ + TYPENAME##_array a; \ + if (_data == NULL) a.data = (ELEMENT_TYPE*)malloc(sizeof(ELEMENT_TYPE)*_N1*_N2*_N3); \ + else a.data = _data; \ + a.num_dim = 3; \ + a.dims[0] = _N1; \ + a.dims[1] = _N2; \ + a.dims[2] = _N3; \ + return a; \ +} \ +TYPENAME##_array inline new_##TYPENAME##_array_4d(ELEMENT_TYPE* _data, unsigned _N1, unsigned _N2, unsigned _N3, unsigned _N4) { \ + TYPENAME##_array a; \ + if (_data == NULL) a.data = (ELEMENT_TYPE*)malloc(sizeof(ELEMENT_TYPE)*_N1*_N2*_N3*_N4); \ + else a.data = _data; \ + a.num_dim = 4; \ + a.dims[0] = _N1; \ + a.dims[1] = _N2; \ + a.dims[2] = _N3; \ + a.dims[3] = _N4; \ + return a; \ +} \ +ELEMENT_TYPE inline sum_##TYPENAME##_array(TYPENAME##_array a) { \ + unsigned i; \ + ELEMENT_TYPE sum = 0; \ + ELEMENT_TYPE *cur = a.data; \ + unsigned len = ARRAYLEN(a); \ + for(i = 0; i < len; ++i) { \ + sum += *(cur++); \ + } \ + return sum; \ +}\ +ELEMENT_TYPE inline print_##TYPENAME##_array(TYPENAME##_array a) { \ + unsigned i; \ + ELEMENT_TYPE sum = 0; \ + ELEMENT_TYPE *cur = a.data; \ + unsigned len = ARRAYLEN(a); \ + for(i = 0; i < len; ++i) { \ + printf("%f ", *(cur++)); \ + } \ + printf("\n");\ +}\ +ELEMENT_TYPE inline fillex_##TYPENAME##_array(TYPENAME##_array a, TYPENAME x) { \ + unsigned i; \ + ELEMENT_TYPE sum = 0; \ + ELEMENT_TYPE *cur = a.data; \ + unsigned len = ARRAYLEN(a); \ + for(i = 0; i < len; ++i) { \ + *(cur++) = x; \ + } \ +}\ +void add(TYPENAME##_array& c, TYPENAME##_array& a, TYPENAME##_array& b) {\ + unsigned i; \ + ELEMENT_TYPE sum = 0; \ + ELEMENT_TYPE *cura = a.data; \ + ELEMENT_TYPE *curb = b.data; \ + ELEMENT_TYPE *curc = c.data; \ + unsigned len = ARRAYLEN(a); \ + assert(ARRAYLEN(b) == len); \ + assert(ARRAYLEN(c) == len); \ + for(i = 0; i < len; ++i) { \ + *(curc++) = *(cura++) + *(curb++); \ + } \ +}\ +void sub(TYPENAME##_array& c, TYPENAME##_array& a, TYPENAME##_array& b) {\ + unsigned i; \ + ELEMENT_TYPE sum = 0; \ + ELEMENT_TYPE *cura = a.data; \ + ELEMENT_TYPE *curb = b.data; \ + ELEMENT_TYPE *curc = c.data; \ + unsigned len = ARRAYLEN(a); \ + assert(ARRAYLEN(b) == len); \ + assert(ARRAYLEN(c) == len); \ + for(i = 0; i < len; ++i) { \ + *(curc++) = *(cura++) - *(curb++); \ + } \ +}\ +void mul(TYPENAME##_array& c, TYPENAME##_array& a, TYPENAME##_array& b) {\ + unsigned i; \ + ELEMENT_TYPE sum = 0; \ + ELEMENT_TYPE *cura = a.data; \ + ELEMENT_TYPE *curb = b.data; \ + ELEMENT_TYPE *curc = c.data; \ + unsigned len = ARRAYLEN(a); \ + assert(ARRAYLEN(b) == len); \ + assert(ARRAYLEN(c) == len); \ + for(i = 0; i < len; ++i) { \ + *(curc++) = *(cura++) * *(curb++); \ + } \ +} + +int64_t inline sub(int64_t a, int64_t b) +{ + return a - b; +} + +// Int operations with overflow check. +// TODO: implement overlflow check. +uint64_t inline checked_uadd(uint64_t a, uint64_t b) +{ + return a + b; +} + +uint64_t inline checked_usub(uint64_t a, uint64_t b) +{ + return a - b; +} + +uint64_t inline checked_umul(uint64_t a, uint64_t b) +{ + return a * b; +} + +int64_t inline checked_sadd(int64_t a, int64_t b) +{ + return a + b; +} + +int64_t inline checked_ssub(int64_t a, int64_t b) +{ + return a - b; +} + +int64_t inline checked_smul(int64_t a, int64_t b) +{ + return a * b; +} + +#define ALLOC alloc_if(1) free_if(0) +#define FREE alloc_if(0) free_if(1) +#define REUSE alloc_if(0) free_if(0) diff --git a/test/j2c/pse-types.h b/test/j2c/pse-types.h new file mode 100644 index 0000000000000..32132edc08197 --- /dev/null +++ b/test/j2c/pse-types.h @@ -0,0 +1,56 @@ +#ifndef PSE_ARRAY_H_ +#define PSE_ARRAY_H_ + +#include <stdlib.h> +#include <assert.h> +#include <string.h> +#include <stdio.h> + +#define MAX_DIM 4 + +// In the C file generated by J2C, some types are hand-written like array here. +// The others are coverted from Julia types by compiler. + +// We have to define Array as a C struct instead of a C++ class, because +// C++ class cannot be offloaded to MIC + +#define DECL_C_ARRAY(ELEMENT_TYPE,TYPENAME) \ +typedef struct { \ + ELEMENT_TYPE* data; \ + unsigned num_dim; \ + unsigned dims[MAX_DIM]; \ +} TYPENAME##_array; \ +TYPENAME##_array inline new_##TYPENAME##_array_1d(ELEMENT_TYPE* _data, unsigned _N1); \ +TYPENAME##_array inline new_##TYPENAME##_array_2d(ELEMENT_TYPE* _data, unsigned _N1, unsigned _N2); \ +TYPENAME##_array inline new_##TYPENAME##_array_3d(ELEMENT_TYPE* _data, unsigned _N1, unsigned _N2, unsigned _N3); \ +TYPENAME##_array inline new_##TYPENAME##_array_4d(ELEMENT_TYPE* _data, unsigned _N1, unsigned _N2, unsigned _N3, unsigned _N4); \ +ELEMENT_TYPE inline sum_##TYPENAME##_array(TYPENAME##_array a); + +template <class T> +unsigned ARRAYLEN(T a) { + unsigned ret = a.dims[0]; + int i; + for(i = 1; i < a.num_dim; ++i) { + ret *= a.dims[1]; + } + return ret; +} +//#define ARRAYLEN(a) (a.N1 * a.N2) +#define ARRAYSIZE(a, i) (a.dims[i-1]) +#define ARRAYBOUNDSCHECK(a, i) assert(i <= ARRAYLEN(a)) + +// It seems that the index has been normalized to 1 dimension in jl_f_arrayset/ref +#define FREEARRAY(a) if (a.data != NULL) { free(a.data); } +#define INITARRAY(a) a.data = NULL + +#define ARRAYELEM1(a, i) (a.data[i - 1]) +#define ARRAYELEM2(a, i, j) (a.data[(i - 1)*a.dims[1] + j - 1]) + +#define GET_MACRO(_1,_2,_3,NAME,...) NAME +#define ARRAYELEM(...) GET_MACRO(__VA_ARGS__, ARRAYELEM2, ARRAYELEM1)(__VA_ARGS__) + +//#define false 0 +//#define true 1 +//typedef int bool; // or #define bool int + +#endif /* PSE_ARRAY_H_ */ From 0c4af121eab6e8fa2e3ec52123606a3711d9b2d2 Mon Sep 17 00:00:00 2001 From: "Paul H. Liu" <hai.liu@intel.com> Date: Wed, 15 Oct 2014 14:07:55 -0700 Subject: [PATCH 02/11] Add license terms to new files --- src/j2c-calls.cpp | 23 +++++++++++++++++++++++ src/j2c.cpp | 23 +++++++++++++++++++++++ src/j2c.h | 23 +++++++++++++++++++++++ test/j2c.jl | 20 ++++++++++++++++++++ test/j2c/pse-types.c | 23 +++++++++++++++++++++++ test/j2c/pse-types.h | 23 +++++++++++++++++++++++ 6 files changed, 135 insertions(+) diff --git a/src/j2c-calls.cpp b/src/j2c-calls.cpp index 8a1cd35ea52fb..46d6726c8a9fc 100644 --- a/src/j2c-calls.cpp +++ b/src/j2c-calls.cpp @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2014 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + static char* for_loops_begin(ast_node_result_t* result, size_t from_level, size_t to_level, jl_codectx_t *ctx, bool generate_omp = true) { assert(from_level <= to_level); diff --git a/src/j2c.cpp b/src/j2c.cpp index 45078d9a7e549..7b695003eaa22 100644 --- a/src/j2c.cpp +++ b/src/j2c.cpp @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2014 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + #include <sstream> #include <float.h> diff --git a/src/j2c.h b/src/j2c.h index 5753e1c3d162c..5fcdd92be8e42 100644 --- a/src/j2c.h +++ b/src/j2c.h @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2014 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + #ifndef J2C_H #define J2C_H diff --git a/test/j2c.jl b/test/j2c.jl index e7665a9b6bca7..2e1721f02f060 100644 --- a/test/j2c.jl +++ b/test/j2c.jl @@ -1,3 +1,23 @@ +# Copyright (c) 2014 Intel Corporation +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + function getenv(var::String) val = ccall( (:getenv, "libc"), Ptr{Uint8}, (Ptr{Uint8},), bytestring(var)) if val == C_NULL diff --git a/test/j2c/pse-types.c b/test/j2c/pse-types.c index b5df8fc361a6a..6a1741831c5c5 100644 --- a/test/j2c/pse-types.c +++ b/test/j2c/pse-types.c @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2014 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + #define DEF_C_ARRAY(ELEMENT_TYPE, TYPENAME) \ TYPENAME##_array inline new_##TYPENAME##_array_1d(ELEMENT_TYPE* _data, unsigned _N1) { \ TYPENAME##_array a; \ diff --git a/test/j2c/pse-types.h b/test/j2c/pse-types.h index 32132edc08197..d577d262f69d0 100644 --- a/test/j2c/pse-types.h +++ b/test/j2c/pse-types.h @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2014 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + #ifndef PSE_ARRAY_H_ #define PSE_ARRAY_H_ From 74c4c85116c87c78a897a59695ab5861ac01f983 Mon Sep 17 00:00:00 2001 From: Hongbo Rong <hongbo.rong@intel.com> Date: Fri, 5 Dec 2014 20:07:35 -0800 Subject: [PATCH 03/11] revise README. fix the call to bcpp error when bcpp is not installed --- j2c/README | 49 +++++++++++++++++++++++++++++++++++++++++++------ src/j2c.cpp | 2 +- 2 files changed, 44 insertions(+), 7 deletions(-) diff --git a/j2c/README b/j2c/README index e4ee867f94c96..689799f25e56f 100644 --- a/j2c/README +++ b/j2c/README @@ -1,10 +1,47 @@ -First, you need to set JULIA_ROOT environment to the full path to this -directory. This is where j2c output file, and object file will be stored. +Julia2C is a source-to-source translator from Julia to C. This initial version converts basic Julia types and expressions into corresponding C types and statements. -To run J2C example, go to the julia/test directory, run: +By translating Julia to C, we leverage the high-level abstractions (matrix, vector, ..), which are easier to analyze, and can potentially add the rich extensions of C (like openmp, tbb, ...). The tool may also extend Julia to new architectures where the only available tool chain is for C. - ../julia j2c.jl +Usage: + User specifies 1 Julia function to be translated into native C. + In the Julia code generation phase, J2C recursively compiles this function + and all its direct and indirect callees into C. That is, the whole + call graph is translated. + A C compiler is invoked to translate the C code into a shared library. + The original call to the user Julia function is replaced by a call to + this shared library. -It should finish without any error. Check julia/j2c directory for the -intermediate files during J2C compilation. +Code Structure: + There are two main parts of the code: + 1. Traverse the AST tree of a function. + This is embedded into codegen.cpp and a few other files to minimize + our coding efforts. It is better to make it a self-contained + module or external package, though. + 2. Map Julia types and AST nodes to C types and statements. + This is in j2c.cpp. + +An example: + 1. (Optional) Install bcpp, a C beautifier + sudo apt-get install bcpp // this works on Ubuntu + + 2. Checkout the source. + git clone -b j2c https://github.com/IntelLabs/julia.git j2c + + 3. Build + cd j2c + make + + 4. Run + export JULIA_ROOT=$PWD + cd test + ../julia j2c.jl + + 5. Look at the output file + vi ../j2c/out.cpp + + Some notes: + (1) offload(sumOfThree, (Int,)) turns J2C flag on for function sumOfthree. + (2) sumOfThree(1) invokes code generation for sumOfThree once, where the + J2C flag is checked, and the function is J2C'ed. + (3) j2c_sumOfThree calls the J2C'ed sumOfThree(). diff --git a/src/j2c.cpp b/src/j2c.cpp index 7b695003eaa22..ea2479d0f8121 100644 --- a/src/j2c.cpp +++ b/src/j2c.cpp @@ -2153,7 +2153,7 @@ static void j2c_dump_all_funcs() // to Xeon Phi. char command[1000]; sprintf(command,"bcpp temporary > %s/j2c/out.cpp 2> /dev/null", home); - if (system(command) == -1) { + if (system(command) != 0) { JL_PRINTF(JL_STDOUT, "Beautifying output failed\n"); sprintf(command,"mv temporary %s/j2c/out.cpp", home); system(command); From 8a661ed5b9b93a7414ebcaf2f255ab544f999e97 Mon Sep 17 00:00:00 2001 From: Hongbo Rong <hongbo.rong@intel.com> Date: Fri, 5 Dec 2014 23:12:26 -0800 Subject: [PATCH 04/11] fix j2c.jl j2c_sumOfThree return array dimension --- test/j2c.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/j2c.jl b/test/j2c.jl index 2e1721f02f060..8f65a69e7cb90 100644 --- a/test/j2c.jl +++ b/test/j2c.jl @@ -61,7 +61,7 @@ offload(sumOfThree, (Int,)) sumOfThree(1) @eval function j2c_sumOfThree(N::Int) - ret_out_dims = zeros(Cint, 1) + ret_out_dims = zeros(Cint, 2) result = ccall((:sumOfThree_, $(libname)), Ptr{Float64}, (Int, Int, Int, Ptr{Cint},), -1, N, 1, ret_out_dims) rod64 = convert(Array{Int,1}, ret_out_dims) reshape(pointer_to_array(result,prod(ret_out_dims),true),tuple(rod64...)) From 2f5716aefca660c335ab990511b295c9b38b09ac Mon Sep 17 00:00:00 2001 From: h <hongbo.rong@intel.com> Date: Sun, 7 Dec 2014 11:29:11 -0800 Subject: [PATCH 05/11] Document the current status of J2C --- j2c/README | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 59 insertions(+), 2 deletions(-) diff --git a/j2c/README b/j2c/README index 689799f25e56f..f6a855844a914 100644 --- a/j2c/README +++ b/j2c/README @@ -15,8 +15,7 @@ Code Structure: There are two main parts of the code: 1. Traverse the AST tree of a function. This is embedded into codegen.cpp and a few other files to minimize - our coding efforts. It is better to make it a self-contained - module or external package, though. + our coding efforts. 2. Map Julia types and AST nodes to C types and statements. This is in j2c.cpp. @@ -45,3 +44,61 @@ An example: (2) sumOfThree(1) invokes code generation for sumOfThree once, where the J2C flag is checked, and the function is J2C'ed. (3) j2c_sumOfThree calls the J2C'ed sumOfThree(). + +Current Status: + C is a static typed language. Therefore, One must make sure the Julia function + to be converted to C is fully typed. We do not have a checker that checks + that condition before translation. + + The current release handles only common cases. Search J2C_UNIMPL in src/*.cpp + for unimplemented cases. + + However, with the framework provided, it should be easy for you to add new cases. + Follow the example of handling arraysize (Other cases are handled in + the same way): + 1. After the normal LLVM IR codegen is done, add a call to j2c + + Codegen.cpp line 1859: + if (in_j2c) j2c_arraysize(args[1], idx, ctx, expr); + + 2. j2c.cpp: add a function for the case. + This function builds a result tree, and attaches to it C statements, + + static void j2c_arraysize(jl_value_t *a, uint32_t index, jl_codectx_t *ctx, + jl_value_t *expr) + { + // Build a "result tree", whose structure mimics the AST. + // In this case, expr is the expression arraysize(a, index), + // and a is the array, which may be an expresssion itself. + // The result tree of a has been built before: this is guanranteed + // since we have followed the code generation process of LLVM IR, which + // handles the argument (a) first before handling arraysize; + // during its handling of a, J2C has already been invoked to build + // up the result tree for a. + + // We get the result node for each of expr and a, and + // connect them as parent-child. The parent-child relationship + // is to be used for dumping out the cpp file: all chilldren + // must be dumped out before the parent. For example, in this + // case, since we must evaluate a first before evaluating + // arraysize(a), we will dump the result node of a first. + + ast_node_result_t* result = get_ast_node_result(expr, ctx); + ast_node_result_t* a1 = get_ast_node_result(a, ctx); + CONNECT_PARENT_CHILD(result, a1); + + // Generate a string "t=ARRAYSIZE(a, index)" for the output c file. + // Here t is a temporary symbol representing the result of the expression. + // To avoid verbose code generation full of such t's, we actually + // propagate constants (the string "ARRAYSIZE(a, index)") on the + // fly in j2c_copy() and other places. + + NEW_C_CODE_4(scratch_str, "ARRAYSIZE(%s, %d)", result_variable_string(a1), index); + j2c_copy(result, scratch_str); + } + + J2C is reusing the process of LLVM IR code gneration, and thus Step 1 in the above + example is embedded in the LLVM IR code generator (in codegen.cpp). + It is better to separate J2C into a self-contained module or external package. In + that way, J2C can be invoked anywhere in Julia, not only in the LLVM IR code generation + phase. From 3925a4fb1700a25aeb30f098ddcee3400cd41090 Mon Sep 17 00:00:00 2001 From: h <hongbo.rong@intel.com> Date: Sun, 7 Dec 2014 11:35:08 -0800 Subject: [PATCH 06/11] minor renaming to align j2c_arraysize with README --- src/j2c.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/j2c.cpp b/src/j2c.cpp index ea2479d0f8121..746ea634e7e0a 100644 --- a/src/j2c.cpp +++ b/src/j2c.cpp @@ -1734,9 +1734,9 @@ static void j2c_assignment(jl_value_t *l, jl_value_t *r, jl_codectx_t *ctx, jl_v } // return a tuple containing the dimensions of the array -static void j2c_arraysize(jl_value_t *a, uint32_t index, jl_codectx_t *ctx, jl_value_t *ast_node) +static void j2c_arraysize(jl_value_t *a, uint32_t index, jl_codectx_t *ctx, jl_value_t *expr) { - ast_node_result_t* result = get_ast_node_result(ast_node, ctx); + ast_node_result_t* result = get_ast_node_result(expr, ctx); ast_node_result_t* a1 = get_ast_node_result(a, ctx); CONNECT_PARENT_CHILD(result, a1); From 36047b7ba1feedbfbb8dabbdf53580218b8fe4a1 Mon Sep 17 00:00:00 2001 From: "Paul H. Liu" <hai.liu@intel.com> Date: Tue, 6 Jan 2015 21:18:41 -0800 Subject: [PATCH 07/11] Remove run_where in j2c generated output --- src/j2c.cpp | 52 ++++++---------------------------------------------- 1 file changed, 6 insertions(+), 46 deletions(-) diff --git a/src/j2c.cpp b/src/j2c.cpp index 746ea634e7e0a..5287644fbdf6c 100644 --- a/src/j2c.cpp +++ b/src/j2c.cpp @@ -1115,9 +1115,11 @@ static void dump_entry_function(FILE* fs, ast_node_result_t *func_result) } p++; - fprintf(fs, "_(int run_where"); + fprintf(fs, "_("); p++; - if (*p != ')') { + bool first = true; + if (*p != ')' && !first) { + first = false; fprintf(fs, ", "); } for (; *p != ')'; p++) { @@ -1128,57 +1130,13 @@ static void dump_entry_function(FILE* fs, ast_node_result_t *func_result) if (return_array_str != NULL && *return_array_str != 0) { // if the return is an array, that array space must have been allocated in the Julia heap, and the pointer // and the size of the array (# array elements) must be passed to C function so that we can fill contents into the space. - - fprintf(fs, "if (run_where >= 0) {\n"); - fprintf(fs, "%s ret_return;\n", return_array_str); - fprintf(fs, "%s ret_temp;\n", return_array_str); -#ifndef ICC13 - fprintf(fs, "%s ret_temp2;\n", return_array_str); -#endif - fprintf(fs, "int prod_index;\n"); - fprintf(fs, "int outsize;\n"); - - fprintf(fs, "#pragma offload %s inout(out_ret_dims:length(num_dims)) nocopy(ret_temp)\n{\n", offload_clauses); - fprintf(fs, "ret_temp = ", return_array_str); - dump_a_call_to_root_func(fs); - fprintf(fs, "}\n"); - fprintf(fs, "outsize = out_ret_dims[0];\n"); - fprintf(fs, "for(prod_index = 1; prod_index < num_dims; ++prod_index) outsize *= out_ret_dims[prod_index];\n"); - fprintf(fs, "%s just_for_size;\n",return_array_str); - fprintf(fs, "int array_elem_size = sizeof(*just_for_size);\n"); - fprintf(fs, "ret_return = (%s)malloc(outsize * array_elem_size);\n",return_array_str); -#ifdef ICC13 - fprintf(fs, "#pragma offload in(outsize) out(ret_return[0:outsize]) nocopy(ret_temp)\n{\n"); - fprintf(fs, "memcpy(ret_return,ret_temp,outsize * array_elem_size);\n"); - //fprintf(fs, "free(ret_temp);\n"); - fprintf(fs, "}\n"); -#else - fprintf(fs, "#pragma offload out(ret_temp2[0:outsize] : into(ret_return[0:outsize]) alloc_if(1) preallocated targetptr) nocopy(ret_temp)\n{\n"); - fprintf(fs, "ret_temp2 = ret_temp;\n"); - //fprintf(fs, "free(ret_temp);\n"); - fprintf(fs, "}\n"); -#endif - fprintf(fs, "return ret_return;\n"); - - fprintf(fs, "} else {\n"); fprintf(fs, "return "); dump_a_call_to_root_func(fs); - fprintf(fs, "}\n"); } else { assert(return_non_array_str != NULL && *return_non_array_str != 0); - - fprintf(fs, "if (run_where >= 0) {\n"); - fprintf(fs, "%s ret_return;\n", return_non_array_str); - fprintf(fs, "#pragma offload target(mic) %s out(ret_return)\n{\n", offload_clauses); - fprintf(fs, "ret_return = "); - dump_a_call_to_root_func(fs); - fprintf(fs, "}\n"); - fprintf(fs, "return ret_return;\n"); - fprintf(fs, "} else {\n"); fprintf(fs, "return "); dump_a_call_to_root_func(fs); - fprintf(fs, "}\n"); } fprintf(fs, "}\n"); } @@ -2051,10 +2009,12 @@ static void j2c_jlcall(jl_codectx_t *ctx, jl_value_t *expr) // from jl_is_array_type(shape1->result_var_type). The latter is correct. if (jl_is_array_type(shape1->result_var_type)) { jl_value_t* result_type = result->result_var_type; //expr_type(expr, ctx); + /* JL_PRINTF(JL_STDOUT, "&&& here is\n"); jl_static_show(JL_STDOUT, result_type); JL_PRINTF(JL_STDOUT, "&&& tttt is\n"); jl_static_show(JL_STDOUT, expr_type(expr, ctx)); + */ // in case the corresponding c type has not been created create_c_type(result_type); ASSERT(jl_is_tuple(result_type), result_type, "Tuple type is expected to return from broadcast_shape"); From ae7d857ea4e2b34e51ef284ab81eeb42620bf326 Mon Sep 17 00:00:00 2001 From: "Paul H. Liu" <hai.liu@intel.com> Date: Tue, 6 Jan 2015 21:19:28 -0800 Subject: [PATCH 08/11] Fix the problem of being included twice --- test/j2c/pse-types.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/j2c/pse-types.c b/test/j2c/pse-types.c index 6a1741831c5c5..241a9db9625ca 100644 --- a/test/j2c/pse-types.c +++ b/test/j2c/pse-types.c @@ -20,6 +20,8 @@ * THE SOFTWARE. * */ +#ifndef PSE_TYPES +#define PSE_TYPES #define DEF_C_ARRAY(ELEMENT_TYPE, TYPENAME) \ TYPENAME##_array inline new_##TYPENAME##_array_1d(ELEMENT_TYPE* _data, unsigned _N1) { \ @@ -169,3 +171,4 @@ int64_t inline checked_smul(int64_t a, int64_t b) #define ALLOC alloc_if(1) free_if(0) #define FREE alloc_if(0) free_if(1) #define REUSE alloc_if(0) free_if(0) +#endif From f3f454032a0b2aff44b70e9b8a7860f112d5d796 Mon Sep 17 00:00:00 2001 From: "Paul H. Liu" <hai.liu@intel.com> Date: Tue, 6 Jan 2015 21:20:57 -0800 Subject: [PATCH 09/11] Produce a wrapper to j2c function; better examples --- test/j2c.jl | 147 +++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 129 insertions(+), 18 deletions(-) diff --git a/test/j2c.jl b/test/j2c.jl index 8f65a69e7cb90..0c8b15a0a3650 100644 --- a/test/j2c.jl +++ b/test/j2c.jl @@ -26,6 +26,9 @@ function getenv(var::String) bytestring(val) end +julia_root = getenv("JULIA_ROOT") + +# Force inline a function function inline(function_name, signature) m = methods(function_name, signature) if length(m) < 1 @@ -38,15 +41,112 @@ function inline(function_name, signature) def.j2cflag = convert(Int32, 1) end +function typeOfOpr(x) + if isa(x, Expr) x.typ + elseif isa(x, SymbolNode) x.typ + else typeof(x) + end +end + +# Convert regular Julia types to make them appropriate for calling C code. +function convert_to_ccall_typ(typ) + # if there a better way to check for typ being an array DataType? + if isa(typ, DataType) && typ.name == Array.name + # If it is an Array type then convert to Ptr type. + return (Ptr{eltype(typ)},ndims(typ)) + elseif is(typ, ()) + return (Void, 0) + else + # Else no conversion needed. + return (typ,0) + end +end + +# dims is array of arrays from converting the datatype signature +# ret_dims is an array of dimensions for the reurn type +function sig_dims_to_args(dims) + # add an Int64 argument for each array dimension we have + ret = DataType[] + for i = 1:length(dims) + for j = 1:dims[i] + push!(ret, Int64) + end + end + ret +end + +# Convert a whole function signature in a form of a tuple to something appropriate for calling C code. +function convert_sig(sig) + assert(isa(typeof(sig),Tuple)) # make sure we got a tuple + new_tuple = Expr(:tuple) # declare the new tuple + # fill in the new_tuple args/elements by converting the individual elements of the incoming signature + new_tuple.args = [ convert_to_ccall_typ(sig[i])[1] for i = 1:length(sig) ] + sig_ndims = [ convert_to_ccall_typ(sig[i])[2] for i = 1:length(sig) ] + append!(new_tuple.args,sig_dims_to_args(sig_ndims)) + return (eval(new_tuple), sig_ndims) +end + function offload(function_name, signature) + # get information about code for the given function and signature + ct = code_typed(function_name, signature) + code = ct[1] + # set j2cflag properly m = methods(function_name, signature) def = m[1].func.code def.j2cflag = convert(Int32, 2) -end + # Same the number of statements so we can get the last one. + num_stmts = length(ct[1].args[3].args) + # Get the return type of the function by looking at the last statement + last_stmt = ct[1].args[3].args[num_stmts] + if isa(last_stmt, Expr) && is(last_stmt.head, :return) + typ = typeOfOpr(last_stmt.args[1]) + (ret_type,ret_dims) = convert_to_ccall_typ(typ) + else + error("Last statement is not a return: ", last_stmt) + end -julia_root = getenv("JULIA_ROOT") -libname = string(julia_root, "/j2c/libout.so.1.0") -println(libname) + proxy_name = string(function_name,"_j2c_proxy") + proxy_sym = symbol(proxy_name) + j2c_name = string(function_name,"_") + dyn_lib = string(julia_root, "/j2c/libout.so.1.0") + + # Convert Arrays in signature to Ptr and add extra arguments for array dimensions + (modified_sig, sig_dims) = convert_sig(signature) + + # Create a set of expressions to pass as arguments to specify the array dimension sizes. + extra_args = Any[] + for(i = 1:length(sig_dims)) + for(j = 1:sig_dims[i]) + push!(extra_args, quote size($(code.args[1][i]),$(j)) end) + end + end + + # Are we returning an array? + if (ret_dims > 0) + tuple_sig_expr = Expr(:tuple,modified_sig...,Cint,Ptr{Cint}) + func = @eval function ($proxy_sym)($(code.args[1]...)) + ret_out_dims = zeros(Cint,$ret_dims) + result = ccall(($j2c_name, $dyn_lib), $ret_type, $tuple_sig_expr, + $(code.args[1]...), $(extra_args...), $ret_dims, ret_out_dims) + if(prod(ret_out_dims) == 0) + throw(string("j2c code did not fill in at least one dimension for proxy ", $proxy_name)) + end + rod64 = convert(Array{Int64,1},ret_out_dims) + # Convert the result we get back from a pointer to an array. + # The total size is the prod of the dimensions in ret_out_dims. + # "true" says that Julia owns the returned memory and can free it with regular GC. + # After getting array the right size we then reshape it again using ret_out_dims. + reshape(pointer_to_array(result,prod(ret_out_dims),true),tuple(rod64...)) + end + else + tuple_sig_expr = Expr(:tuple,Cint,modified_sig...) + func = @eval function ($proxy_sym)($(code.args[1]...)) + ccall(($j2c_name, $dyn_lib), $ret_type, $tuple_sig_expr, + $(code.args[1]...), $(extra_args...)) + end + end + return func +end function sumOfThree(N::Int) a=[ (i*N+j)*11.0 for i=1:N, j=1:N] @@ -56,21 +156,32 @@ function sumOfThree(N::Int) return d end -offload(sumOfThree, (Int,)) -# warm up, will trigger j2c compilation, but will not run -sumOfThree(1) - -@eval function j2c_sumOfThree(N::Int) - ret_out_dims = zeros(Cint, 2) - result = ccall((:sumOfThree_, $(libname)), Ptr{Float64}, (Int, Int, Int, Ptr{Cint},), -1, N, 1, ret_out_dims) - rod64 = convert(Array{Int,1}, ret_out_dims) - reshape(pointer_to_array(result,prod(ret_out_dims),true),tuple(rod64...)) +function powOfTwo(a::Array{Float64,2}) + return a .* a end -for sizea = 1:1 #100 - N = sizea * 1000 +# Here is a sample of calling j2c functions directly. +# libname = string(julia_root, "/j2c/libout.so.1.0") +# println(libname) +# @eval function j2c_sumOfThree(N::Int) +# ret_out_dims = zeros(Cint, 2) +# result = ccall((:sumOfThree_, $(libname)), Ptr{Float64}, (Int, Int, Ptr{Cint},), N, 1, ret_out_dims) +# rod64 = convert(Array{Int,1}, ret_out_dims) +# reshape(pointer_to_array(result,prod(ret_out_dims),true),tuple(rod64...)) +# end + +# Alternatively, we may use the offload function to automatically +# generate the above wrapper. +j2c_sumOfThree = offload(sumOfThree, (Int,)) +j2c_powOfTwo = offload(powOfTwo, (Array{Float64,2},)) + +# Warm up, will trigger j2c compilation +powOfTwo(sumOfThree(1)) + +for sizea = 1:10 #100 + N = sizea * 100 println("\n****Matrix size: ", N, "*", N) - d=j2c_sumOfThree(N) - println("sum=", sum(d)) + a=j2c_sumOfThree(N) + b=j2c_powOfTwo(a) + println("checksum =", sum(a), " ", sum(b)) end - From c2286541e954e46ba4a2d2d416afb75f14858d1b Mon Sep 17 00:00:00 2001 From: h <hongbo.rong@intel.com> Date: Sun, 11 Jan 2015 19:53:18 -0800 Subject: [PATCH 10/11] Add a short tech memo --- j2c/Julia2C.pdf | Bin 0 -> 171065 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 j2c/Julia2C.pdf diff --git a/j2c/Julia2C.pdf b/j2c/Julia2C.pdf new file mode 100644 index 0000000000000000000000000000000000000000..cd6df7633727caed1fac62c05c394b858e605c74 GIT binary patch literal 171065 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೸ikLRm_U-(nH`iumPkStzgc7s<(MFX1um+j z>>7D0+X)^!WPX>$dO$)StCFnc1E?FG>aOAK{2_I1Y-*&Y+ruJ87hRCsB4SyT55cZ9 zIffx079osT6)`Fenmi40?OGjsuN#$DaF15dV;HmD&Po-zj963g3Sk9~L)2XD#ko1l zlD(eFM2e-(g0s1<KzJk`N=Jt*0+{3ygHe)Ep&rN)m0197K$5>ftyW6HmbjBw5fF1D z;&vH6559n8ZOy2TX*o^AzvRqnXvniL%U-~&;MLAnlOz?sYMa}bPf76*>9RXYa7IK> zK6LBs_!UfCuOP&Q!bk=XOcn(+sa360fjF}o{aok;$OsQVl+Of!@?0v=3(roB4-Cv5 zO2TG3s|V~LVY{+YzAO7*Teu-PL6uzUeuGTdfQX98t2rF>{b6MnS610T-GL?qgW=HH z;-;}2eJF3^&$TtM^MHa{DP6c|D)?$dn<;HkSuPAZll6ZHxBIHqPg}2Z(6!PL6h$?d z<n)c2xKgqeEw}}J<g4siOoh{dp=CZP>1&!QyfL@vpi@|je4?f=IRmZ<;KIlz{bh^; z_L%-u4#p#?u~;);QVG2+9=ky*Nx_?1(FMpj0yT13fkZgzfNLJw0;J4l&}269axX&` z7TUEKVHk1?aGHSgdLSva>o5dm1VOdYNnCQkd{>QYN!?i^EwUEy2PYO<R5v!NnMY<= zkzOqbYGi6^?hcB=uEztGwBtcbEV@p*F7#Vy5>i!fqO3JZDcoEL)thOE2MR|RN5FZ& zPn@O}y;fANxs9}l$Dt#O2`a>P44DvYI{A3fe2~W3h9y#Ywh{%JOD-HkKU~ZhQ>R1? z@nw@Vgnv1_P}SHsThFI8O%7y`Vm}EgpwZ-}ScJUzpC%QB!ipdf$lr}}xFuO4p9jLz zxO(nTl-e){H`sHTI${pPLa?BE<w7CY4zbZ}{ZS3<*9zNwCV1w(5(u5N4#%M3z-Hp$ zWTF*I#NMVM34msxu-NsYaX8zl2th=DyfG<OSi%ypi0(jPl-5aQ5HB7<ZCPH$0{)l8 zeG)@p)}j{#$gkC?h1DD-f)a|cFF7i<F0mf6V8ajXxe@4UsCLe?0%6YZ6o!w@=bf3T z=>uDn2oKpqS(9^i=Y)p3`<`+J(;%pjrkRdLOk}#3oVe?d3pQcB%UN<lv_Yi!+?T9G z$5tJD8gEyVSoOeA**OB~6g9nlZxF0D#->ZeWN2*e3cQr97*K(%(c$tiilWK02BO6g z6vBNmCkmV_tWnhjB)RfXDkUVZ7-5XTqr(@O<$e?+V#<=sk6c-*qF`!%#8Cxc7J^RA zeYnI1<J#CwlRGsRKX#5*#uT^9=puR=xj<5KSt*p<5|)d(r|J@@`m)TF3ctshnp-%M zu@|<>YW#N(78;P$wN2PzTHH1zCE)(L4!Ov}VCi@n*sCT6TFM$+7wupX=w^F@#lcC8 z)~If~GMTKcKXP_RU4K0~jM5f9MMaZ}nHeU}ItTEa9a(|&=@m0s-tkpZOmGGk-@%w) z132s%6?nm+kI)AdSn=@#<Y%>gTMXhQ>$TO#jB{2@USis$5yB-9FNCEBt=obUlb$3N zm-!xFdnTfCOh;A(H^4}*vTGD_4Lr&^(Ro1BDhb;tDFlj%@SkKqC#3~z;aj}127DFF zU8XWG_BdS33QE+2mrX0<He^^TxkIJ3*o&1dt3Hj!9z)5<1I;9*%npoDtH0aLFOo>y zk#D(WLI5S#U;}BcY;*a;h(P*A%d)B&LqnJWf<#e(qgI{pmNEb>QJG+51`#4-p`sr^ zr8{R7)s?})5lWVTvRnjbo)Y7P9F~fuW~^w?3l8B{5<tEf>}F`5EI{(RsAiKSo4YFt z+XQqHw?2ZrSsG7+0p(71;i+W9(yMWrRtu||t;rGu!6_lHO6;*P=tHDJZWToy5@~5y zSu@Qo6)yCWy^$poTH92(6qb4@I}B2jD4L!!i<%!oU_KTY6yO{se+q5nPO}^&Lklfp z7Dme1LsY~%jt5%Pfa6lLYKUme7X4pcSSw4VEQORR@b=JsV@g}{c;Zin8w91lG!hAL z;cfM;v3`cj5gSE>l47g9tMzuKoU~yZ;AhB^%bGT*lo6b;2W%)h@@iJS6}ZR5^Q0$) zT{5K-VpO)JRT6n#MXpN_b!x;n>Ay2sA}%t4z_5tLGjr*p#Lnvp1L*4pQmhoUvJ@%~ zB@cubq>m@$$_ry)$X1E1^$#e1dfQamC{PB=<DZ#D2!d*PQ+PL&Zx@R26KO<8^o2!t z2#(u?!VAlZ0>F=kE8!9;%M!;1n2HaB@hW3#M^%2U`s$y&2L~*vDz6b}5SnX9`j@Pn zsz@ueR<AVqTNO#<T%9SxYNjmCQl~z%L;f3DnZicrhwD}TqP`EUu><{@!VIk_3WY0O z@p(ija^(tfi+CrSm&a8lxdkfXxuW_l8;h(VOs`?~^KoIU@>rvq(X(Ed%a6v^=3E+v z`449wL#T|veGgxbRWef{{{Sxt>ek)PhDbt>B)cWTl@=$4QwvG`zGspcdYr0Sy_tSO z3c?rJ@EJr=6d3w%WYfN7Wmh*5+x(?1O$%vQ^-2Re&lLNiTdvB+<o9p+q5k-@tm*Pp zzET2-l@6<3-bgMWb#gLfAowhW>48CHB8u)6E$s5?r(<}F>Y0ycIjGTs4@ZPipCCi? zVe?;1TuD&E5fYA}nw?i)6v<S=-VBKoMAXDKQ9Pw_Vn)D_sIvj$0xP@85RnPTy18yS zi9A@KzT26CXR5qGs}x!%&B#~MrJf^8?Bo^d)5s_@xvW)erTb2bz*g2=qOl|k>LRlQ zsB<63+oUwDe&H=f(j{d5O<uy;;x+Vx<l{y)9~3IdWE`l-CuUxKi+fW3)LzEgFTbu^ zZ?zGlDeKv$KGRg2LD}OM+YQ;OiWQkZy}Qtw3epz+_RrQ$$ZbYqBTr&?{js-e9kQ_9 zjlZgu;ts(?>$nl<Yx8PM?27s6pwIQ?x6OpL#tE)R#eM7xWSwAG{kY39Gz}`h8y)lY z`0E+CG<|Da)2p?tcJn$V!99Hn?s?kk1&Fs}s~meJeXE!)UqkHMb^6@YHI*Ny{c?Xd z7D^*|qZl6^M+gmCT#m?0C4Fo^HeH$td1%F7V44Rd9hNIOuW6gu&bkpKD<3LJM3dUX zLu>4hl<b{>VS`fft`hkNrs~5Lr`T)Kyvf0aN-iPldQmaD@C*lq;%Ft0E;yF81uYnQ zLYT$R?AyFX_x}K|$9-?r<^5*=084LqAJL8zse^v78na;fkmz+KrrPUx^O{z(Zw3|D zr%+X6z{=XU+vB50Uhb_<g2iA0EWx;H$N3HFJ)G<>cno(?4W_?^W%lD%*j}%7xxXzo z{{S^U>OauSRXW^gI{I{1!Cj`x82Bcup*yEK-9Lc16Acuw9gjMeI_bL}wvM<*`~LuJ zaqj;BT@KOBuu6k%z2s<p9x?_^xjj{D3j5l>WbI7px`1=y+V9+Ug&3!Aj~Zdyt6V9f zgzgAv3sO>@s!Gr7;{bYg8uTv+@C=T{fV*$ncCMLGUSTysoRAg)e0-c%0Rkd#5ve4= zu^p-yLtvi$hN`2<V6mO4t2sXxUt2bvY(FD0?Qr2(WoU6_5N98$$E1og<As<vGR|CJ zF;YR5KxG$OY6-%99kTA4%CWMI=|BU^W6O55ifC9Va*_fC(HT-!;J|i#xoIRFi46hh zD1P{tY>SJtsFzFzSztmA)@HV?N-ryI<M|O*krT|_5j4)xVzqJbKGRGTK#Bsd&370} zC0|?(yx6)T!(2E=RD+cd+w+x<Ot9f(s-+CV$BW1D$?%;GW1U)=xgG~b1{hq})`{1- z@E&4TxN$)waBANLUSiFJRU?P7s-o*UxSH~h1q!~-&T|&sfb2uh5b(2KR9ny^XO)DN zo}#s>u0lA7=uE_jAaF?M#T_VyeMmYf>!@sJgQ;QC71^l7e#YdHo|N<pUtAFahSS0d za@CRrW_c?4Nm*-pp9YdgVc6AK!KF<WD{8}3a^)n#jqO8@xI{)X4MI|OZO8{m<F<-| zDmy*Nk5{pV_T^SMPLN}kY-M;Ztm@Arr}hg4s-p>L8yawOv>dU;V=OY0m`Zq=b)`8- z7sghAGd4%V%yn{k(TGb9%Z&myl5OMn1(`A6PPMfM>ypSXX=3dq3ySFhv(eIPa)=zh z5k%N1>4^z66T+bvrG(ya8!wn0A3iLgD4T5Dd&((=Bc=A2q>}hya8{%z0kM+Pk+oHG zeL8x1y_5w?SR>GfPB$pUS~Vvea5oM-mimQ&u<8oZ(<qm+K&lGf+a?v2u1HL{l2CgA z5rk}HSaDyJ?Y(P)hLA;>7t*huVPgts>vH=(qeN9?Pt#=cjpi{~Jl}xm8*OE3IG%RK zG7SOwhTW2bBo(c(9T8U;E<|9^z|LCE46W(Q8C{}=r41}_0-@7J0kocRi#g53RP}MS z=s#W8LzX(U_6kfk4K-KYW)On45>pd<R6al2QQEfp4FHvevMgc>7QS&lNA3$o3bm+_ zT*wDV;)LsXH##=jj4lIUN=)X@$R$}$&xK*I*Wyt=O$lUJ?ObBtHp>JX=4=faSq)SN zV9t``g3BpsMA3rjoJ@spa8%U&zH}*Cp(c{}8Sc>YW6rmlmIl#YjDrBwT;6+KSgp7y zDoIqgTvs&pmu82K*wZx)4(%t|U56$ya7We2eM}M(L=BZpP+|@!e!sFkA~`3JJZ^P? zL~Wf=D<p`^3-ENz`52ekm{kU_ezU~+vLm1lE6}`^MT>UV$*gpc<KWZlO^5k88nV2c z<)`pk*ntKSOKY6d!qeU(jUj{z$THP~7Ren+VA?TiLhz8*P`0Aaf>8+b8<I~(SE63a zj7va(EKHD?1?f~bMHgK;3<Ra&zTwtiTx;qrsl`>G1&Lv=swi1Ij%F!Trg({)H56=M zMe`)w#BG=X+cHX*iL{}~r|{PZGS&7BEFIaBO6Y^9LO`uzI1^F2>n(}x386K6Sshq{ zBNi1-2ti>@p+uTWt%R`cXxd>k(RHj)15?<`#btec8Bu7{d7*{!DLbX5tjm55v7F4M z1dyyGafPfLns_0ylwG6$0Ay3h&+u0vw70l0wX#I(YSrh^LeX`C*9u2pR?^m9IGok+ zm6A`E8eUXUY$jQupP4dPaTR<?9m@+*$geJ&Z(?>#^MjBAlN^jkh*}Wx;6gQG{HjN% z%F~DZFe3qju@zHI;_9-*OLNps+=A|k`(xLprWH|Tni*T&QuMG{^{p*e1eZ(Oa}iWs zK;m&xuw}ES#g()P9ZDqfijw)IPS*noL0vM{uOTH|l{Oc5#o&XBN|tXlc&cQ!J(?hy zRgx&(MUM~1utxZtRHhuaBne$&UpN^RDQN_Pij<R#;6Ed;2W*mBd=6h6&6hJ@0A@e6 zZ<t2K8E1*9EpF?ab!y)3yR>$bjc~%jw@CeQVb<gZbQQK|Qi#c+79?_{w2Z}fN6Y)3 zI#C!{L=vA5+oD1+SWxCrRx&a!N;@hUB5~O)hSGpx)y>%}N-vWW@o|s{Lsi7CQx+O< zbfA#dv>?S@oa7Jmv3+PYaaeIt{=iXPsA}5|PEHAYb$u)sVcWqXD@_E1PGxKXn$pHa z_R^}U@tlVKChdcYSRH)$bv1X6KurkSmX&xGB{gNmj!AkCm9b$&1gsmbMF@0w(NbB8 z>a@G(2D4i=jRR?zPsG4jh|H_1vd)7hFr}+|F47vWqb8%&;4U_lM?qyj0f#d@Y0+C8 z$`2|#QHWXf*h7l6#$n~GDPTZBTWor(5iD^+;S0nR6w@|c{a-8k16bJC6J{B;h~Wn8 z2~uc$o~aD;Yd%&t0L3`(ZQ9%7Z#DflZCJFbD=woHDkQL+G;KPPJv_c|uwjy@JrhDt z%GQwwR*pC@q&Hbzc3%%q=a$SAD^VJ`#bPy4ExTEXmk`SgAc!!%7YGiLr>=cMNn0o? zaBSFTZ$+@7!;)ziQui&xSADKRPYvZlD?9ke1Xw)K(C~&bnpi_dda;$I8xy^(O7_1$ zv|AlfciajCO=fG+;o&?Mm4{W+fi5cFhVmMk9VF>`lwt~I;%uX8(yzsuOqIOFyqQ2y z2xYPnwe8YZ85=2T)NW}dF`P!s5*ZLRupx%CD;)-{PaN%eWZgn2D;()+lOk|}AvmJY zpl%-6)1ncf(RRF2Ib)htzPNiJG>Tbm3ZBLwwCifa%-T*UTVa<}07R7<n?^`tzp<^7 zBl^e*JZWWdI9!Mq*z_%saJ&?nKnL0q!Z2L2QOPr-ih)!nL2_1=#O;ubY|hLE8#qw9 z7652!(fe6X^0u+;C{I=FdBkGkb;Q+7jlBy3EL}C9HFh9<W>)oa88NX<Uru|upw_`A za^l#<Kw#nR6_upDrbh}P3lkb-XIaE84M}<`UyK(l6^2%?50GKG6fjW7(PB<!%V#AP zm1SXL9Z)DU5`D1HmI!KAHHP)V+>a7g7o3e>DgiZQ*5Z<GNP@EymbDaAV}f<@MbjkO zWQ!{Ngu!Q*l{r*eWUI^|Bnly`nj%#ELeVR$<2<RkWWYzDWfZHp64UZh)f}-P9ii;9 z$!cQm!Y->P9S1~GXn8Cph7eSmPLq+kptwF4Ic~w!c3sLJSn^g8Mb#3vCX|{yO;^^= z65J89pa6&|_`*vn91iaY1}Cy3DkSP`%(RFynVWjtuB{@PdW~-O_2MwJuQ=K=K*$AY z2y++7(W~s??WGcGvQ-eom9P*gX~TlS4@sjRbf?Wex{kj}Dz!6Gh6rf+(LBq_t?F~d z$~*HNSmX0n#jsvthZJP6Y*3MvF~P%ScmwVG0A86@ZGqQw*Uh*WQrF(dW=3m!_=Fa4 zctpS;ZB2mUYD39_H-WlO>F551@91Ryt$S_T309=_WlL(`WftFGF4(TuVQ%xNW~Dm^ zYu{TPuo*8~S_<mAHxxvtWZgAezi<8L^~KRf_R(nRlfMf`xX#i#+B7B%%ez=xy>Fi0 zs4XqVX{x<&5ItYE@L|)vvGzD}{{YW*%52&1pK0?>GaYGq`0h5c&%X_1^>6V}b%C$h zUb(leZf^^=cA***%<50qoEFRNnWe6rb|m5R9?<ozuX;;K-FftBTz@b=puKHds5W>R za3zy*Fn;1d?i<#nYmu(9(4`};#1#RZpK^jX{{XdAoc{o!2yb5Qe}YuxMbTKqywX;f zDP<i&B==Xl3p%EVAG2V9F&i!!vl4*2vF&@>cThOm)ItVM^m)CR8wyRujY-w82NrDV zy9{e=U)BEr^q_u-KlB{`073r%`Yj)(FZ)RTg<fl`ohm<_mWI0Q9Q7~JTeo75Z~4I3 z`{~eS%&(=EwH{xsv}hAZy+=Bo^`EX7_MbX2YC7!cLDbr})vlg;=CbF#scwR9newhN z?A+J&dD=1yuIE<Usp9L+W`%X@vhCo90qaYz?%p<YK-n%4j&y~-`x$LxRIWp7%vHru zG-L@pmZ%?P>#Y6G_Xg{+)-fJy%AwV6(>4`JK6(d7aW5YB)~jNIyDQsHgVj#uDev>M ze;YIrou6VsQIVI(aa^-U1Gk7r%S$07GUdGh+G>L<k3CgmOH+RrMM{trA|J3+*Z4k5 z<MROn5nWs5GX+43tPto-t<&YIVPujw+?K@^U!51qk>Zyd6*tdbj+4NFPFRt38he1g zVRX<f8D<-bga#Ve7)U1SsHMr(E?Zw_I!-e#j3&jCTvQ_>T_*=$jg=JBaOV@Db*1EO z0JGBS{uIPbT2$p;2(bDV9LYDFSt`^t!dD(K6>AfQKo`fLQEEgtN!$Lkp)Dn%w_>>X zVZzZlyKBu(n%<B>TZQJw%oMGt;e5nG1gpIK*TaPzEC*k6H7LW3<e>g+c|p;7@c#fR zn<wIVe8Vf^q#&!QiR3>kTo>dNVLF-N%6>xEgcDB@2W3iEMiFsmiH1V5S&5=;0x-c$ z&;mE<J$9=UWP+jLnV3#o@Zq(n{hfM5P%2IdW`0CK4oKjKoVfE>K`2guCEQrO7qEvd ztXfpF3Id3_M)jVn6%a3#fr~akuEt0VqAL~?BWM)Fd8)KIQ_1FBa2E<gTo+m*b=m&_ zDmcvK<>2TgQJR%W4vdgMB6hM3giFDIq}+{FfBmnl$f!aYs-CMbhd{8rzBEmHp{g6z z;$KsUTDkLi5*4o2-(>;AW46v}{M7EbsO7C}DC~;ro0jq*YG*#Co%@Pz!ABkw<jmZC zDkO2#)q>?b!KVTl!6uY~1Le60+s>XM>e8Z2B1wM6S5hL8h|6zrQ4Cg0#dlU5SONs4 z%jz0(d*!b)O4b;St9<uV)Pxm%YE4#Vh$3zp!lt$DA-a@=u~Ik)eB?MpSDD0!oXY@5 zt|^r;v10+Nb$7*CSDeR;N*TcT$QdzWpG{Q4mPdg)C4J%-0I5_^oy}^6)l05uim$=g zjU<@1&(1FbywDvri8ViCSHkWG1zvAjp|&ghzR4s3=y0n7$FxR)m6M^6Q%~2^lH(UF z{Sgc7O>?kb9(o)GuF<9?uh^AU(8&bEF%6R!RRxnLt)<B4SH;a6V}PeA^V<NB#yBQU zMjA+&ZF^g#JI~~SRg)?#gb8t4xZy7d0`nFnC>9emGTvxjhZiPYCj%*Jh6lmKS-iw- zh+3#r=7Vc&77UQ2u4(aTxf*h6+=E*)Sddym;7Hel^31n<(%2Q$2KJ$nJZUN~0uUF` zB`b)jL}D)<ELR*NG(Z_>*7a#jaWqm9Q6&~Bgb?{fNm$#H2kKx*ZEE_jn=nE$V5Yes zy5Wq_w>s*;aAS4Q044lV5he5(=PgjJIoNGUby)RGw6x2X5UL|+RkyrBIXnqITDq&S zBq8J=4<~^ZLlWeqRhC(z^lfEiI10AymTrG*+X2IqQ}FlYIuz&ALfMVbSw&l9S7CR} zz#81=?x-3*QsX^O=~4mln<hCN#Xv1&9Est}M%b75um=w!;6hPY@HlOl5z=1-b3w`D zDt=pYBWML6P%Lv(1LOd4@z5vsCQ+b*5pRXUXFMN~S0NUMEVWpG=Dy8j7yE_-lAi!A zovW3pNK6QAY>&lN{{RoZFDV6BY#uy3o~$5pGZDktlSS7e(l#xmEm_7u5?To&IJ?T| z(vrGrI>$z^uBlrrVRMYuLePT2R<)LxpdGnFxWXl(x$U6}YBSmKSqd1xuu#AfD4<Z; zw?tY%s5_u39|z{@lvh2$M<O+kG?}!5t72hHF}1!tD#@|gWy#Z3Mr#+|4L*#xq$5O1 zN#!jda4RE~N*LksgF{d}Qr7LTHW3CRI%OnT;6kOB&OZw=ZX?7qG*42~PA>GWfd`gY z5`xB=Dk4mPH@BAc2V`4V6AV_|@F=9-&_oMjps7p;K3hbUklme7$Q}$FnEm@CwvSR+ zNisKFQBqgYbtav`gZYsToUVZU&Xv#L&0vb>oUKZ-!ek~8rqrKXfRv#U9JVqD{P8Jl zGU!?Od1RsPHvoWyO{pDW{B1E<P`QNkABh+>1tGOUi{Ruq9d*8mxUMEGK1WVe_c=%} zynigOmEc}S8D!EScT&3krj2v{L8^>ShaF`L>cw4MSI74?LXv!(-Xu;2z(1#Iq}Dq6 z4JrC`iiNO|BY~Msmg1EMQ)lKEhm0nStIEpd5r8Wgl)tQcB9yzWingFZI-bofkVjgX z1JxEaxD%bwi#Ay~5zvX-X&B~d*&>fWDVoX4Ag0R@iIf^l2*R2Nj@ih>Nu;CUQj?Fw z#SI^x3QSrNz%;URc;tsSQT-QO8ziesoD}U*SP{g7<vBRlWCP#ybcG2nP{LH6WGUIw zYox+~kS?t*MQzBGuw)eI=pvG|ELy&?_icR4I*T#|7LBpynT#b6hYCBDl`~kpZWKyq zC!*M@@~N<G*fh{B@>bfj*VH}<<tcI_u@Gf047Qy~8;)o?%12S`3esmF5P}};$}t`L z9VAs&P0i#alV46Du^{Ow+wo0LJvs_ttuG@=MC(Tz?Y6^N=Rp$V@G_%E7eKvZXO@GB zAT02Y7qiIPeFVyDHYz|cF3iUqAavpDAaNu&x&c{IXg(CwwY|d&fSxjM$odhH>Fa>F zb}R)!TDvwiyR0V+O*u7=0LF1LR5noaeJ^*BRhOaxfLY4R9j^%lPLc$!ThTRSE)a0! zL#bE;PXm_qo*W@#8VJov)U|h<_Z`p{AIYj}ku#Bpx~=*+4EZd5qN<|7ZjJjguIUvP zIaye>KxJ`Obt$!kGa!mUOVz=az8dviI6@l2>KLq`5fph3hclPUHw1QA9V~kV0=hwE zRa6(1$$HK-M&#?p&z;BD<8v@JReM%okGPNht1boyi_bakenN7qgu@M+h9iVV)!?D0 zkjO!^I|jYMZep!LitLo*Hkx{tbgr0_vLu#;C>6OvYI89%>s}Iym4cOV7DRn>_HW?N zvSa~1WsfG?T9W}^1=A2VVoGK-ow-8aQl=Tu2(6!v5{Dp`3@%u_!izdfR^L3T!$>d5 z9PkzPc^dHJJycUG8wrl%T~T9MXGZ#yrh_c|Gzuc%!V{b!d3k(9M4W_T38WDsg@v{3 zC~|iX0wwZ(E;W5oW!e<LyND$p^cXgDjTQaqR@annHAzjYHDuP6Q5s3P3cO<E%p)3F zV_eOX)A7!bb)^;0LwhlbJuJdM2w#?HPO|ecXv$G_?WQ|i+lp~bjeLwnEnHd!ZN?(+ zL0*(f#}}*&fb(OY`kRWLuHjCqt16_aENcVonE>FBm96mFLXjP3Q;$6I7wI){3iqa& zoRKl~J$Mm490BglQ3yn2b{`WdB`r`bv3!u%5eAW{WI&?{3f4={1=f<%5b`SN>30ub zN<<9JotV>Ow>lAP3|qmaXJV7L$x}okm0h=YgLtEr-k!2I_><cZ#PEM^TkZX4-Rt`U zLT(|#_3wapH#82^`r~Q0Z@PeTFZ%X|!Lx?}OzU?~9YI3-3SJam+MEqtuDPDjTRGQ@ zH-D^hf|TrpN7XsAZ_^i9{hapu)u&vVwU|(whJE@p)LyF{7S-xzcVXP^4@C8I06C~I zzlC~#Cy3Uw<t>%Ft=c<9x~r-$(knk)`8POeeAYULxwYWdoS+?xcIqLx+jqB41}C_7 zsn8LmX*l)KNdOE|LsqIA4&kZ80$w%B+D3(JoU}K~G=99hEfJH-;k>9>C>mN~sE7$Y ztTu}9N;mNs1!0Ve<}ZbyD_ef(k<ATVk1T->kCSocRJ;g?xjJig$&b^b@$)m*P~ZUF zePY?k>mL_Fu?q`o8$bT)efqyazw~|mE4{CONyl`5=ohq3yxMltbt}^SvNt}c?L)U? zq3Z+DZI|q?X*U~g(Wa{P?{~3=@1h-MGa6lPx3mz=&Xa#Qw==3Od^DS(uywQRke|2v z@zl1Rw#jC{ovU?RpV&i7(IW|x*-qgb;Euf6!<E(zq)hH+8y|}$Gg|`-qqer~dgYP4 zjgh%3Usg^D)o+dDXv)~@Wcj-<La}B~xu!wW`Qmmzbeg)UH;RRY)Eeh!R949Mp4Us& zuQE2T>hhyJ2nXUKp-MO<EpFR2<OCI4I8aAogf^d-B>dbxVFF8gPSrDp!-AP1i6A2{ z{OJQ}8RNyiL<`8HkkUdnRmhfJ3T(Jj*x21z8)Q3iwtHtSswG?<$~QJv2|&T5C%xw= zD*o4!7xfc@&h=VAmI1L#MbV6v7s(MxRuZ;+tzBJUtZaMUMi~TVe--pp#okJibcPsS z7(ljKw6Wwvi0WJjfp1$1zKX*W$fz3T&${8R3YxyUk|fGT1Ot-9wGl!<q@{`ODN!oa zVD94@0}(BXMqUya;-rVkL6$^T(M0y0t4;<ROGQ1*j70tkZc%Z%(%rSH5VPFgu;-FU zj*<nmu1j2aK4>fwpc1`FWl05z6ONV74OWFWek!`Ffpb<R3*iVOlbWr{h~)<a#0|>> zr0uvC>s=dJpCiW#N2IRGQb^XUfLSs)Uj+hRkk-7b(b#76@s<AoQ40=5-V?wcj;F+{ zc<4!gvV&gdiS5<Kse)D@uA_{FqhZC3;^m7KLjp?VLYZj>bJzyYF5;qs@fwuYUn~O= z8VG=0L8=>yX1##Ucp**`98=z|qy^QG#M;}AZZ{-)B-I>!#DGkKKDx2cRo9YaG6D9@ z%nMV?omn+>3Dt2@me?cY^?+eoSoq5+7zEO;WDvo4IEoR!Wi`L+=BFuV+D7oFHEnw% z5n-7C*HYwy!LeqSSnzoQc<+AW&0_*#iEXvC_*0upL{1woi^EyNO~RJ@lL|+~MSev_ zuBDkiMwvqJ)5r(Q5-y7izRY7hK@USnm0Y=D;%HdACPfAS;a4tt)iB(oQSo+dPf8tF zinAOJry8J)&%<v+njCV=R2H6{%-|=gfNMX*;aGkHqFNHWvzADFuYwG%=rMw$CElv= zBsUF=IAEYiBQK!Pv12>BxTw<2U(?AJL2(QLHB>`<Qgyo1a-$L4Wmwi!u}8Cp6jW1- ztSkFK+(0KBolre!{WGcY+Bxk^6(~5uR|HQKVG&rMHkvk*r<;Jyx@4T%ysG_A+ya93 z&6OKZ*4Ii9A{b0w@Etgz`o=zFhy+SbNPj<w+pg3X1@%6V7#hf2lFuKf1*R?9+N2?g zwbNC0t*ihXK{gOn;NSo#%F^$$wxp9!dAzn1ZxJ;$ci&}|<93WOD}qHUBMeSSN(_*q zvaEWFnlmLDgPF2bsRJ9gBtZ-cYx?}HSZt(OaXocaW=?;2g(I4W1zTW*RrVtE)<F7F zkp*T`l}%$JNiaQuK;@ZejaJaPp^E)o610_*hN_&9k@mVkF0T(mW!b>B(xZDAW|=&) zIZ9M(&hBEN^J4%AAE9;wgQP$fDVwcqnfCi5V9D2z1Th3;v9<WtPlUpS*BFGfc>2*d zQdZwapqBXZSbZl^fLeGfC<SLeD_mC`wOL<yyGGDm<*9%(RIn~6Vj!|DFf@GWy_*<4 zYu0T>KKinYK@-|7j5cOe>nLHhk?I|!rm{%A56#m{?I=P_sO+Lpiq={~JhIB%YF=i> z7$vtOYY@0P^seJp94_K5N*1sxN92_pVQHjLh((la-hmBN4_P+Bl`_?@GU|^Mxp}Gp z(Mfp&8vs%PDH3qH$1RMe&X)nF2@`^x8p_}&j;ri4$}vEdY(+ag#fz{>q0ekslA+D= zy_+i}uh!0nL@c`^>!|s>GxvQXS$Hb44AO<odj-J&fy33{XM&LP9}BFwiJ`j9eW5A! zcnGZ0N~T`es>E&@PK|NyXC);IWULRD`B(V33c+NolK2pDYX0qB)Gea!I5>vs0b;~7 zxvS=`D!TK`Ev%xjExGF00{K~rPP>yV!l;ILR+(6Di^a`9NlE*zZEs*A(dQ>))rnE} z+VyD^0jO{_^n$dPUz;-NiwEdUb5O_-*nVLyG|--_x7K5<ypn5<>#TQa9Y`&QDTX;? zs(z=s?<)Nmd_;&9)OAOan+zsKRf--Wz6|+#{2#Q##YyDDJ<g1!EVzWJBD=OOtsWP_ z_P`_+3(oxPCSoE)RAM&Xe%(>g2N57J^E@8D?0Sg@E65qpk^6|PY@CIS;<JmWrLGFz zF#v~MLSD}Xkpdv`Hkl<^TwAu33d*oPPAtUfAl<efQTl?MwC$mqv_{GBJwNUW1chg; zn)}JH^)a@jJz{AYS51+8%B-9*ERi~)kt*^6{5PhpF=qb&ZY!!y93Lv1B6^G&S|n3$ zP_r&0mC@bJOE-~kkhcA!7ZQ4FQd?6rl7T^jwbBbya4Hn^++rYG!NmZU{Kp|Y9EMO{ zEQMBSxFIF5zKtM4%L~R1@&py(#Sol_41nr#*eNoA!dPNUMhH+&8X~~EE>_<|tb{DG z5>pZGLUy4Q04Z`rl&x!P77x{fMZ~tS4OJ~Vk~$*|scRb6)!a>2DzD>+uj&gBnqEyH z_&kMNF>tR_BY1+e>jvG&Rf)}|v~P(Z(IJ~uBsyqN!Y4c}9c9~b^VOMU*<8mVjFiN* zunc^>_tkt5miif{>|{0ZB!KldY&c1f#^Gex-s0;~={#0ix~f53T)JPf)Fh4NI5SNr zwjc<INM>u;%Bs({2cib3TsBIQGO~hN#-zO`;dx6ewhp4ar)=wtGNqQZ5{qV9Dh~}} zl8G!UA&NyKaH4KTVM2C*o+B)y>1@oPRXkO{7CY`H*EyzxP0is0iL8*=OEnd3E=eB+ ze{rRX+vrD4!AUMpbe)GRDsVlI&}@~6CtA+f%7kucdQJ~5oJB-b=fpP1<7HWSN5I&Y zVC5m?fXZ!u*6^{yhE`ciEmW1ViM~nAo!2$Op~GVUU<o@|%BHEuZbhw<#j!X==IK6b z0Or#RfIY@dSaK&af|WpccdMG?sA0*e5tQf2h^(QEl|5m9pT*iS^;qUhqN1(sLV_Cd znqFSIe#7=5BZM?M%Uw^M<)&aSgZP^)2m<06qh!xPvsr0NYDgOzX!5tLB1<l4*jeD1 z;DHmua|HoY#?`iO5T|HP2x{PyLV&UOgWr|X>N6{p84Q@P>|o$qZm7iK129@6kP)<% z8|%Z8GozQUREpm@5r@xRr8^bHU`2h587l-ZBd@JUx>aoDt8j++h(QBg6v>p=BDRp+ zsrWq$%Z%nA-dI{NTA+ksHiqRY%7m8RKBH)RCeVtlPyUP8@M`!dP8fvz2)4i%2f$?! z41iFq?KCzL#kt{OPvpiyA*_J$8K`FoXVkLQ(jsNH4SNo5N;O=ivi#QhB@Jlt*Bw}l z*z!uu69S`HgjPt1Se%x#u(;VgIGOP2c}1hu;8lAx>s5J{^tra;wANb}T`bVguV0Es zf(z_w>8;6M$ZN{C+l#iN)+4S!a7cL)u5nvLlQpE}?N36lkGt&wXkw5Gh{io-ioe8a zK^Px)e7!nd^7DRTZC;FipVeRYe}0Vb?KvabS;#Q`U~bpDr}AF7+{a(8%=RZ(jav5) zbI}ZQRa;)BI_vhKpue2=a*yaA*FvxDW2H{J+N7&H+ifpe4{vQfL@7Sbv^%NQ{R6w* zLU_@0f7sz|7p?W1M%jE0w0fYtP>mC?Evq#yy}KjVMlI%bn{x3QRCa7*pr+Euy72Cw zZW>eSNlUk#ygt5}J7n$4(>ZTpEe24VchH`cyHYoOb!na0X{W4JHL3QWOaA~go`v7e z7Kt1fmAY$)YXBM|z_LTCe0KQWD->2_0#?dizN-(1Ol2+s9dCNF#efg%LEDPhBW)C# zkmoLETL+PxK-NK*jj2;Ws!${C<?*#6F_{6i^3YjR=k`%^6oAqt^Y&b;Ft+cCk!7ww zLBUv7_4Z%0Zu#G$-}c^rW{>nPzfcG4K>q6A(i{2>^Q*r$SJf-|W>R|b(KlWD<=kpB zw#JtFy=Wt2dbQNo^lCQ#S%1$%`FV9v?eDa2&!5%1fBN^+b3EyS9k7nSEQO5pg136< zb;aAOaMgnruebGE_OfQ(J+@=myRP3;-p9jTRyHqoYbR`*Hny05UZ#h&%6nHD%hYp= z?8QMsxcZM^xG8>*f*bLDR)F}IT1UmcokCKN?xSh_r*?zZ1FoL(`;9X0uKP#o&7e;5 z%6ewD&H6ii9JD{cTlngnG%iY?F&I^nralNt+dCg96Qjy+lTd*;;G1w*GEfC!Nhm#l zNEJ_1x2@Y-n);{i&Ka%(o`S3e<p?Az@VgAsxA}C#z}`s*jH}kwYPl#1&a<<RX`%BO zXnCP4F-vbgUbx51bZwa*Qj*Pbd0l-VtV1qof<0g$*=VJVS4*e*DRNJ@iTf~DD!SG( zTO0*{FK|_eEhX0xWDmN%9kW~3*S%>++H+Lo{qYn6q|Hz$dXYlI;R>o^5RS!`u`5*4 z0}{m{rqfNLyeW9ZG*xn2cS8Y3W<s)W$W)cx?uK4+6jy1|!Z+a9;*#NM`xb?R^M!nh zI_zS_u)v3GdBOua9+M`#?7Eh;N^^hYY$o?*SqeQOglje0XH}15#gybcpst?ADU$UQ z3qF~L0m)||92y$4?{6IVlD+V40)zlsUK+cy<qqd-DbHn6)ac|!TMR5N;J6Jd>NMUG zr?E}N7EF!EokxPrsHxLt^iK(l*o96QZz8Y@NLQP<iqXB>r-*P>iAYde{+og2h5-h6 zSy`8DI)h_VR8Yx<?wXmJl^R5|J|&Tm80YZ=+}9;gEn)m`b~WE9EZNl&!cAp@j3Eq6 z;139?w9*uO1;F4U>Vgu0>SnMgwJtE=sZx1QVfE#^1yo!HnSy|Yd3YEppsRc4TwdKa zqN}NUg9UU+S7vYm*rV%|^8}ofMiF62PDoLccHf2a)jfMWzQdHKz80zo%MBV}ge1~R zuz`^-!#jS{?f!OU#YNKd)*<C(Nh^>z$7o6h%eLUh9X$s*m{4fWB@u{t&EZ_P%jlXN zC~c)_QR1Xc%D;A2RcQjG;myP}q9oHdE;u^al)?uJ8Fk^-EK6=FvV<V#R0D=u7xcwX z5h!#mMwDls9u$^vrgTDbBrz}%awDYU>1=sf8S()NxXQt);X;R;W+6yJ5{mB297u0n zk$njw9uxa_mBKB7zz8$<%)tTw0EWX;ID3&8$u;(xjmL%_PPi)^tZs`2HacQ8Y(0Hq z&x@(XCR|rU$d<t444t?|gAUOonZm-XH|bYEWWO`fDsUax6|ytRUR}Z0RfMXzrL!ck zzZZkU+F3}*=y~aYwHf}3t2Z~H>k~+*kz(@fCzctZVixOPP1Rwx4Va>*igz{@P5~ZX zl|0oxBR8JRGM3CgHvwMfu<?wNLIsyyfVDgY<8@M1`8|j_7XgsB2q4kDl@1(&zx3x( zROGm96_79)p$SW>VB&)s&o#+x#55s`eQ|7^YX|nrS5pg{Sgl@C>PTWI^)x4$LiJMO zLkdNtta<1l+tnx%<b|N4Dr@<5GIkMP*uRy1lg8(9Sk)1hdU#_2$pla?Sp%y^zK2{j zW1d6!CtF`u7A=b0s)GxN%zg<3*SIM_s2pjGpcUF-hE@<qsE{;;=AiA}BZ#*}0_HQ) z(XK?!K2Er)#cXReY#gNAAb+W#>7Q1<8cM+#r(6+*T1OiPPu9f7=ccy}fQ7$S=GY)3 z`7Ps-wjsDSG+c;@1yOg!*JN&g4O%v1Gh85^wkgV#oiOV2DDc%bZftehDcQ3%mBmXn zKMfFeQ91IKRK0mX<cR&2Wlca#5lah_DXIZ8-B~Lr`P(d-xgMIcNg`zxj{^|QVXv!m z^h@kyaeS&yCh7A_eCeo#l3cO%k+eF36jk~nX-c4uZ6xK96^6}ktBUEl+#>RSE$J|f zh|UE38x@e%Q_4a`jWdrK4v1Iz&1@`?27$5jsdzO4R%S6l8l2#{q^mGP6*a8spmZeS znH=L-MM!OWTCcl_QXCSZtr1Ft#~iQ8lOVWs+)s-<qsV4Z`etX{iE4`iP8o-;v8%dn zHhw^y*rZ~O6}z0yX76g4HmLh;*#@_9Cmu-A482uWR26k}T(FepY>;v?0}%J^lGuby z@S?7xtaFS}^}U~HQ{s^Jfi*cSd0ytT>ZZ`C)ZmY>5>7*!7}h|Dkd}^lPg32EB#y8M zt*Wao^z}4K*XZk_-->`-NDc@{;Ol1DXUr>;^W-eJhOQR06W13^)c~^E3LcjwnjKqY z76VZb#R$l<k4CO79h5CE2d{e|40WnKwqj;1%r%s0t$eyhsw?_SCf*~^ncZN70W0ik zjx|-lMNd%jMzRtSB!>S0YZlNz?p8<GRRF2VNerOT)*P5+QDnI4Zml;X%n&xHy#Q%M zGJ6_fWl0^5PSnBkz><kI(^6t7q!*88HWZRBMO*y43x_GXBE`5s0_F!NOe=Ud6%YmN z=JN<0$1@jBl-U*Sap?5uKsU@3iF9&opC#msf-6O0<qkf;sp|l#Qs^lzL)t|&blJG^ zpw&k+B@zf$cpsdkv>qt-3RBHkq~;A2^g%3?gfQ9CildkObs{2`X~5WY2m_Xuu4{Np z%DoZ1N5u0MdZp}JKCcS3rA8;~u{+k?8m7YyNq8F_m{n+mo@jfrCJg9(Dg#JSRk`dj z1h$f@{{RJTn(7qcr7}82>cTEF7Ok!sM%cKh2PCq2(OLT*G}eBarYr<?Rl0h(>Z7F+ z7Fq#S{F($lEtxqB0vtT2;Cb}eF!f(omf6rFHr>x<Q1rRRd71Ffwtz5N$eG!@NWPq{ zhb*fLT!Gs$%|W8N$KVc!YVlhp#Vru5qb9;9ZtDuUsVwrtob-S&i43`nrD7FnSai4y zrMCtuTAY}^0zS-`sn2lI{{Uoc9F%miWlB7KIC~}m9}DZp)%HA4q;Sl}Sp$%CchqWe zIg1{qh_qoUlSJ{8__2i%XG2jdaaFM0p=;FP7v>t~xs|#?D+|**bo*pmGdRma8*eQs zGnn{XV1y2>3q4z7XYpJlG;iRx#|~U&Sy)>o8N&l5ZV;du;PO`*o}Y>{9;WTtB&g#v z#^H!B6|XE(iu8(Hbx+(G&J+jB$W}n31q+m1F~3cg4Og<#aY;=@t7Dl+F9xwhzQWW` zD_&Dq!I&4Ntw?<>Sym(RPDh5ij#x5SbOR}5pi^2VyJslz3sQKN0ey@QUc&|Dx%p3g zFp>#EQy?-abemQfmje{edd*5#_Cna%@k?~>ja`)owZ^h)hX(|Kr_JFeWI$sI&3x9L ztcVcP`GLsMY}Nt*!?D;|veH!bg7dKBUDOQeiZ*g0tFiu8G70Qh?DiaPaK%=41!alG z=^SR|ptSLsl+BY9K^~e@QWni}A9^SFbzDc;Xq#EvviU(k{W-O0k$@D3(f;G{&i(LE z3oC1KC^|9_wtl#sT5B6l%|(4XSWXE|FEI8zeQ?3jW<;1xYlAh7`qn@QPcuIQR1o=( zwTSLux}3(nm+?y5&|sHUn_EEKkhyRGp(l!|6<KCsfIzlsAk~hkC96_Wa$;ro3|M)t zWCclK7D^mfwV8a>CNO$v;@*lwdwYK!m%qN}d9Un0NbH+b&$qM&hJ@^9W2Q>?bGYb} zH#r)~>lqZ#0b1#5JCfYyxEZ_1c|CvI&huG&UhFXC?f%d#zfQO7Drq*A*S2P7pz6ub zJ|_vJ*~i_|sv6hTbM*r2is{|aD*=_?$c}~?Hke!d1>JbDEa5h@&DHBm)}3*?;r_69 zM`b@v?%HJRk2CqG+hc}mT~?n{`D;&R3#<KWM=)JKR(&SuSc7{59aH3|5~(9Kf|28+ zL18xmj9ZT73lO^4Ph8kpYs}=Ry=Q_RlC&#v^|bV*fon_EIXqWU<WgnGY$@@n(Sh|N z$Hmn6ksS7MAyN_xAJF*iXl)BIFSCNp3zZnnUy3Yd!B}}t;LIbt{&v{@&Hn(>NA%@? zRxi=#wf_L>`TZF?fAmi2RaNzmE$h$MapU$U>)qDw#@lnD=&`Mx<$c_rY%KzGjb?A3 zOyA4FxVbs*hi!)EBhi+%S)|<k7uRu(b+>mLDr<V|){uf%+r7p$t>))XZ+4dJS!`|J zWEu$3RhzOVldgA4^Y+7Tgww3Hu?oLgIX37XV^M7n7q335_6^z=KckCx>|e0Q_*ty$ zMtOv8Im5HY_Wrh6t{MiVdHTlJ{FMW|m7Q(aoT*tQOXhA=-Yf<Rb2)wx!@r~?sVab@ z*jQPKfg<q)Usl@jxquc=QN=Sgc}dn0#cJkNAopu}h06yH0EIn_C>(s9dIfM6>6L4q zxqybWOlqqr@)Xqij}1AkLoUg%ixM8Wfgdn2%&r=C!4qzS4h3}Gt5MZ5zKAC#GXP|` z1*>}6i*VLGe==}J+GovG$xE1k$<xpl5j327iqQ$hXepNDwE^mgkz*^$zJfVWC-V`7 ziV-a2tA=80X4Qi7x6us?8f7RAOgOuCf~c*F7#=@8oS5e|CS?vQbi}sw0w;vyRvnLS zR-;x0K}=a@Wal-VN#vk<%(3d+R@MmARfOEY@2El2sWc?~1ev`d=y`&27)(*6DyZT} zLi<EjG=+WU{g)aAj$a#+I!}g5o9qq0c0*U^vsKtc6v36TQZ*=NKXg^`<^te^w;&63 zO^(g7jH(fZLkE_4lqrlIW;$D(whW@ftD=u(zW85eC~dXz7+=$=vg(38R1L!$;?aZ( zxTFA5f+vksgAr1Kh~NVP8n(>AUmpX2C>JF?nLr~Sn!p+zUU_7NhuP%SAs}r;Ta1{d zIT-rVZ*}!qYu>`ag(F7cG@Fbvs8Jk8jGf8C(xWcUDy%|LW5ZRp1^aL}=Idsajg65B zq<}!;2&l-}(Ai;%^4PS(sp~1zhE$W2VzEUvF@(i)lz=^LzlJ>Yj<1A*6Sj&0O_Igr zuI6leIT*a87*N8Z8v_9DUSXPmjSGgjhtWsZr$xiKAV_TJ$WaQ!;KB⪼HSlZ0hRL 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 literal 0 HcmV?d00001 From 77c5f13b0193ef8b1942f8d329a05f2a2727d334 Mon Sep 17 00:00:00 2001 From: Hongbo Rong <hongbo.rong@intel.com> Date: Sun, 11 Jan 2015 20:14:28 -0800 Subject: [PATCH 11/11] check in tech memo again (the last checkin does not seem to succeed) --- j2c/Julia2C.pdf | Bin 171065 -> 171065 bytes 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 j2c/Julia2C.pdf diff --git a/j2c/Julia2C.pdf b/j2c/Julia2C.pdf old mode 100644 new mode 100755 index cd6df7633727caed1fac62c05c394b858e605c74..6d3a47a75d89511dd01a423bf4e061558573982c GIT binary patch literal 171065 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%0DS|58a>Q0ku_aqyB+Tr! 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 literal 171065 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೸ikLRm_U-(nH`iumPkStzgc7s<(MFX1um+j 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⪼HSlZ0hRL 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