search for: t2addrmode_imm12

Displaying 4 results from an estimated 4 matches for "t2addrmode_imm12".

2012 Dec 18
2
[LLVMdev] LLVM ERROR: ran out of registers during register allocation
...one physreg: def PTRRC : RegisterClass<"ARM", [i32], 32, (add R6)>; 2) modify the RC used in the addr_offset_none addressing mode in ARMInstrInfo.td around line 947 to: let MIOperandInfo = (ops PTRRC:$base); (this is used by the t2LDR_POST instruction) 3) and likewise modify the t2addrmode_imm12 addressing mode in ARMInstrThumb2.td around line 151 to: let MIOperandInfo = (ops PTRRC:$base, i32imm:$offsimm); (used by the load/store instructions) then compile with -O3 and done :) In addition, I've attached the debugging info generated by the regalloc for the Thumb2 target. The main diff...
2012 Dec 17
0
[LLVMdev] LLVM ERROR: ran out of registers during register allocation
On Dec 17, 2012, at 8:38 AM, Borja Ferrer <borja.ferav at gmail.com> wrote: > Hello, > > I'm getting the "LLVM ERROR: ran out of registers during register allocation" error message for an out of tree target I'm developing. This is happening for the following piece of C code: > > struct ss > { > int a; > int b; > int c; > }; > void
2012 Dec 19
0
[LLVMdev] LLVM ERROR: ran out of registers during register allocation
...Class<"ARM", [i32], 32, (add R6)>; > > 2) modify the RC used in the addr_offset_none addressing mode in > ARMInstrInfo.td around line 947 to: > let MIOperandInfo = (ops PTRRC:$base); > (this is used by the t2LDR_POST instruction) > > 3) and likewise modify the t2addrmode_imm12 addressing mode in > ARMInstrThumb2.td around line 151 to: > let MIOperandInfo = (ops PTRRC:$base, i32imm:$offsimm); > (used by the load/store instructions) > > then compile with -O3 and done :) > > In addition, I've attached the debugging info generated by the regalloc &gt...
2012 Dec 17
2
[LLVMdev] LLVM ERROR: ran out of registers during register allocation
Hello, I'm getting the "LLVM ERROR: ran out of registers during register allocation" error message for an out of tree target I'm developing. This is happening for the following piece of C code: struct ss { int a; int b; int c; }; void loop(struct ss *x, struct ss **y, int z) { int i; for (i=0; i<z; ++i) { x->c += y[i]->b; } } The problem relies in