Displaying 9 results from an estimated 9 matches for "fibx1".
2005 May 12
2
[LLVMdev] Scheme + LLVM JIT
...* fib_function =
"int %fib (int %AnArg) {"
" EntryBlock: "
" %cond = setle int AnArg, 2"
" branch bool %cond, label return, label recur"
" return:"
" ret int 1"
" recur:"
" %sub1 = sub int %AnArg, 1"
" %fibx1 = call tail int %fib (int %sub1) "
" %sub2 = sub int %AnArg, 2"
" %fibx2 = call tail int %fib (int %sub2) "
" %result = add int %fibx1, %fibx2"
" ret int %result"
"}";
void * M = llvm_make_module_from_text (program, "test") ;...
2012 Feb 09
1
[LLVMdev] Difficulty inserting putchar in IR
...wing
proper output.
Function *putchar_func = cast<Function>(M->
getOrInsertFunction("putchar", IntegerType::getInt32Ty(Context),
IntegerType::getInt32Ty(Context), NULL));
Value *One = ConstantInt::get(Type::getInt32Ty(Context), 1);
CallInst *CallFibX1 = CallInst::Create(putchar_func, One, "fibx1", BB);
CallFibX1->setTailCall();
Thanks and Regards,
Tarun Agrawal
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120210/9bcd728b/attachment.htm...
2010 Apr 29
2
[LLVMdev] Why the same code is much slower in JIT compared to separate executable?
...; <i1> [#uses=1]
br i1 %cond, label %return, label %recurse
return: ; preds = %EntryBlock
ret i32 1
recurse: ; preds = %EntryBlock
%arg = sub i32 %AnArg, 1 ; <i32> [#uses=1]
%fibx1 = tail call i32 @fib(i32 %arg) ; <i32> [#uses=1]
%arg1 = sub i32 %AnArg, 2 ; <i32> [#uses=1]
%fibx2 = tail call i32 @fib(i32 %arg1) ; <i32> [#uses=1]
%addresult = add i32 %fibx1, %fibx2 ; <i32> [#uses=1]
ret i32 %addre...
2005 May 10
0
[LLVMdev] Scheme + LLVM JIT
On Thu, 5 May 2005, Alexander Friedman wrote:
>>> Does there happen to be a C interface to the jit ? Our scheme impl
>>> has a good FFI, but it doesn't do C++. If not, this is no big deal,
>>> and i'll just write something myself.
>>
>> No, but such bindings would be *very useful*. And since there might be
>> other people who need them this
2005 May 13
0
[LLVMdev] Scheme + LLVM JIT
...) {"
>
> " EntryBlock: "
> " %cond = setle int AnArg, 2"
> " branch bool %cond, label return, label recur"
>
> " return:"
> " ret int 1"
>
> " recur:"
> " %sub1 = sub int %AnArg, 1"
> " %fibx1 = call tail int %fib (int %sub1) "
> " %sub2 = sub int %AnArg, 2"
> " %fibx2 = call tail int %fib (int %sub2) "
> " %result = add int %fibx1, %fibx2"
> " ret int %result"
> "}";
Some typeos (branch -> br, 'call tail'...
2004 Nov 05
0
[LLVMdev] Re: LLVM Visual Studio Project files
...nd = setle int %AnArg, 2 ; <bool> [#uses=1]
br bool %cond, label %return, label %recurse
return: ; preds = %EntryBlock
ret int 1
recurse: ; preds = %EntryBlock
%arg = sub int %AnArg, 1 ; <int> [#uses=1]
%fibx1 = call int %fib( int %arg ) ; <int> [#uses=1]
%arg1 = sub int %AnArg, 2 ; <int> [#uses=1]
%fibx2 = call int %fib( int %arg1 ) ; <int> [#uses=1]
%addresult = add int %fibx1, %fibx2 ; <int> [#uses=1]...
2005 May 05
3
[LLVMdev] Scheme + LLVM JIT
> So as it stands, one should think of out JIT as something akin to the
> early Java JITs: one function at a time and only one compile per
> function. This is extremely primative by modern JIT standards, where a
> JIT will do profiling, find hot functions and reoptimize them,
> reoptimize functions when more information about the call tree is
> available, have several levels of
2004 Nov 05
2
[LLVMdev] Re: LLVM Visual Studio Project files
Like I said, it is in my path. That's not enough. I'd be happy if
Morten chimed in with any suggestions as to how he got it to work.
On Thu, 04 Nov 2004 18:45:18 -0800
Reid Spencer <reid at x10sys.com> wrote:
> Two suggestions:
>
> 1. m4 might be located by your PATH variable.
> 2. Talk to Morten Ofstad about how he got it to work.
>
> Reid.
>
> On
2007 Nov 25
2
[LLVMdev] Fibonacci example in OCaml
...uot;recurse" fibf in
let recurseb = builder_at_end recursebb in
let condinst = build_icmp Icmp_sle argx two "cond" bb in
ignore(build_cond_br condinst retbb recursebb bb);
ignore(build_ret one retb);
let sub = build_sub argx one "arg" recurseb in
let callfibx1 = build_call fibf [|sub|] "fibx1" recurseb in
let sub = build_sub argx two "arg" recurseb in
let callfibx2 = build_call fibf [|sub|] "fibx2" recurseb in
let sum = build_add callfibx1 callfibx2 "addresult" recurseb in
build_ret sum recurseb;...