search for: a_val

Displaying 9 results from an estimated 9 matches for "a_val".

Did you mean: _val
2011 Oct 13
0
[LLVMdev] BasicBlock succ iterator
...d @showValue(i64 %j_val) %3 = trunc i64 %j_val to i32 %4 = inttoptr i64 %j_val to i32* %5 = getelementptr i64* %1, i64 1 %t_val = load i64* %5, align 8 call void @showValue(i64 %t_val) %6 = trunc i64 %t_val to i32 %7 = inttoptr i64 %t_val to i32* %8 = getelementptr i64* %1, i64 2 %a_val = load i64* %8, align 8 call void @showValue(i64 %a_val) %9 = trunc i64 %a_val to i32 %10 = inttoptr i64 %a_val to [2 x i32]* br label %bb4_0 fun 1_subloop_0 bb1_0 bb1_0: ; No predecessors! %c0 = call i64 @sync_consume(i32 0) %c0_val...
2011 Oct 13
6
[LLVMdev] BasicBlock succ iterator
Hi, All I want to implement DSWP Which is used for parallelization of loops. For this purpose, the loop was replaced with a new basic block in main function. And new functions were created and basic blocks of Loop assigned to them.I have checked blocks and branches for Succ and Pred relation and I have not found any problems. However I get the following error: * **opt:
2015 Mar 03
2
[LLVMdev] RFC: Better alternative to llvm.frameallocate for use in Windows EH
...them as escaped allocations that can be referenced from EH helpers. Here's what it would look like: define i32 @parent() { %a = alloca i32 %b = alloca i32 call void (...)* @llvm.frameescape(i32* %a, i32* %b) %fp = call i8* @llvm.frameaddress(i32 0) call void @helper_func(i8* %fp) %a_val = load i32, i32* %a %b_val = load i32, i32* %b %r = add i32 %a_val, %b_val ret i32 %r } define void @helper_func(i8* %fp) { %a.i8 = call i8* @llvm.framerecover(i8* bitcast (i32 ()* @parent to i8*), i8* %fp, i32 0) %b.i8 = call i8* @llvm.framerecover(i8* bitcast (i32 ()* @parent to i8*),...
2020 Apr 16
2
[RFC] [Windows SEH][-EHa] Support Hardware Exception Handling
...mpute the address of “a”, and store it somewhere, so we can then do a store. (Well, we’ll assume it does, for the purpose of describing this example.) So the compiler could generate something like the following sequence of operations: Before the try block: a_address = &a; In the try block: a_val = 10; *a_address = a_val; a_address += 4; a_val = 20; *a_address = a_val trigger exception In the except block: a_val = 30; *a_address = a_val; (This is sort of pseudo-assembly using C syntax, so I don’t dive too deeply into target details; hopefully the intent is clear.) Note that the compiler...
2015 Mar 04
2
[LLVMdev] RFC: Better alternative to llvm.frameallocate for use in Windows EH
...what it would look like: > > > > define i32 @parent() { > > %a = alloca i32 > > %b = alloca i32 > > call void (...)* @llvm.frameescape(i32* %a, i32* %b) > > %fp = call i8* @llvm.frameaddress(i32 0) > > call void @helper_func(i8* %fp) > > %a_val = load i32, i32* %a > > %b_val = load i32, i32* %b > > %r = add i32 %a_val, %b_val > > ret i32 %r > > } > > > > define void @helper_func(i8* %fp) { > > %a.i8 = call i8* @llvm.framerecover(i8* bitcast (i32 ()* @parent to > i8*), i8* %fp, i32 0) &g...
2015 Jan 08
2
[LLVMdev] JIT simple module and accessing the value fails
I'm using the llvm-c API and want to use the JIT. I've created the following module ; ModuleID = '_tmp' @a = global i64 5 define i64 @__tempfunc() { entry: %a_val = load i64* @a ret i64 %a_val } This output is generated by LLVMDumpModule just before I call LLVMRunFunction. Which yields a LLVMGenericValueRef. However converting the result to a 64bit integer via LLVMGenericValueToInt(gv, true), it results in 360287970189639680 or something similar - not...
2020 Apr 16
2
[RFC] [Windows SEH][-EHa] Support Hardware Exception Handling
Hi, Eli, Why are you under the impression that threw_exception() will not be called if optimizations are enabled? I don’t know if the -EHa Spec is clearly described in MSFT Webs. At least this proposal has described the rules for both C & C++ code. The very first rule clearly said that “no exception can move in or out of _try region., i.e., no potential faulty instruction can be moved
2023 Mar 11
1
Multiple Assignment built into the R Interpreter?
...e a single list of length > 1 *is a valid thing to return from an R function*. I think, like in Julia, you'd need to declare the set of things being returned, and perhaps map them to the variables you want assigned crazy_notworking_fun <- function() { return(a = 5, b = 65, c = 275) } [a_val = a, b_val = b] <- crazy_notworking_fun() Or even, [a_val <- a, b_val <-b] <- crazy_notworking_fun() In that case, however, it becomes somewhat unclear (to me at least) what only_val <- crazy_notworking_fun() would do. Throw an error because multivalued functions are fundamenta...
2023 Mar 11
3
Multiple Assignment built into the R Interpreter?
Thanks Duncan and Ivan for the careful thoughts. I'm not sure I can follow all aspects you raised, but to give my limited take on a few: > your proposal violates a very basic property of the language, i.e. that all statements are expressions and have a value. > What's the value of 1 + (A, C = init_matrices()). I'm not sure I see the point here. I evaluated 1 + (d =