search for: ptrrc

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

Did you mean: ptr_rc
2012 Dec 18
2
[LLVMdev] LLVM ERROR: ran out of registers during register allocation
...second round and queue new interval. 4) do some work unrelated to these vregs. 5) when selectOrSplit is called again for virtZ it falls through down to the return ~0u line and fails. This issue can be very easily reproduced with the Thumb2 target by doing the following few changes: 1) declare a PTRRC regclass in ARMRegisterInfo.td with only 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...
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
...4) do some work unrelated to these vregs. > 5) when selectOrSplit is called again for virtZ it falls through down to > the return ~0u line and fails. > > > This issue can be very easily reproduced with the Thumb2 target by doing > the following few changes: > > 1) declare a PTRRC regclass in ARMRegisterInfo.td with only 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); > (t...
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