[PATCH] Allow 0 offsets to left out for strbt / ldrbt in ARM mode.
Tim Northover
t.p.northover at gmail.com
Sat Jan 4 05:29:04 PST 2014
Hi Joerg,
This approach looks very dodgy to me; duplicating instruction encodings should be a last resort.
Cheers.
Tim
================
Comment at: lib/Target/ARM/ARMInstrInfo.td:2463-2464
@@ -2462,1 +2462,4 @@
+// LDRT_POST_0 should be an alias for LDRT_POST_IMM,
+// but the existing Thumb2 instruction confuses TableGen.
+def LDRT_POST_0 : AI2ldstidx<1, 0, 0, (outs GPR:$Rt, GPR:$Rn_wb),
----------------
How does it confuse TableGen? These instructions shouldn't overlap at all, since IsARM and IsThumb2 are mutually exclusive. What errors are you seeing?
My quick experiments suggest there's a different bug in how TableGen pairs up operands (the loop at CodeGenInstruction.cpp line 564). That seems to prevent a sane alias being written here. But I've not dug enough to work out just what yet. It's all rather hairy.
http://llvm-reviews.chandlerc.com/D2510
More information about the llvm-commits
mailing list