search for: l_ci

Displaying 3 results from an estimated 3 matches for "l_ci".

2015 Feb 22
2
[LLVMdev] Eliminating redundant loads
...de: %base = getelementptr inbounds %ravi.CallInfo* %6, i32 0, i32 4, i32 0 %7 = load %ravi.TValue** %base %8 = bitcast %ravi.TValue* %7 to i8* %9 = bitcast %ravi.TValue* %5 to i8* call void @llvm.memcpy.p0i8.p0i8.i32(i8* %8, i8* %9, i32 16, i32 8, i1 false) %10 = load %ravi.CallInfo** %L_ci %base1 = getelementptr inbounds %ravi.CallInfo* %10, i32 0, i32 4, i32 0 %11 = load %ravi.TValue** %base1 %12 = getelementptr inbounds %ravi.TValue* %11, i32 1 %13 = getelementptr inbounds %ravi.TValue* %5, i32 1 %14 = bitcast %ravi.TValue* %12 to i8* %15 = bitcast %ravi.TValue* %13 to...
2015 Feb 23
2
[LLVMdev] Eliminating redundant loads
...you expect? > Hi, Tried that - no improvement. Also tried removing the redundant GEP instructions, leaving just the loads. Here is a dump that shows the output after running the optimizer passes (this is from the passes in my program not opt -O3; this version does not use memcpy() either): %L_ci = getelementptr inbounds %ravi.lua_State* %L, i64 0, i32 6 %0 = load %ravi.CallInfo** %L_ci, align 8 %base = getelementptr inbounds %ravi.CallInfo* %0, i64 0, i32 4, i32 0 %1 = bitcast %ravi.CallInfo* %0 to %ravi.LClosure*** %2 = load %ravi.LClosure*** %1, align 8 %3 = load %ravi.LClosure...
2015 Feb 22
2
[LLVMdev] Eliminating redundant loads
On 22 February 2015 at 20:58, David Jones <djones at xtreme-eda.com> wrote: > Not sure if this is your problem, but it was mine: > > You must create (or obtain) a DataLayout *and install it into the Module*. > > It is possible to generate machine code for IR and not install the > DataLayout into the Module. Rather, the DataLayout is used locally at the > point where code