[llvm-commits] [llvm] r106299 - in /llvm/trunk: lib/Target/ARM/ARMISelLowering.cpp test/CodeGen/ARM/call-tc.ll test/CodeGen/ARM/ifcvt6-tc.ll test/CodeGen/ARM/insn-sched1-tc.ll test/CodeGen/ARM/ldm-tc.ll test/CodeGen/Thumb2/thumb2-call-tc.ll test/CodeGen/Thumb2/thumb2-ifcvt1-tc.ll
Dale Johannesen
dalej at apple.com
Mon Jun 21 10:32:33 PDT 2010
On Jun 20, 2010, at 11:12 PMPDT, Evan Cheng wrote:
>>
>>> A few more comments:
>>>
>>> Please add a test case of an immediate call to a local function:
>>>
>>> define void @f() {
>>> ret void
>>> }
>>>
>>> define void @t4() {
>>> tail call void @f()
>>> ret void
>>> }
>>>
>>> On Darwin ARM, this will generate b.w. That's wrong. The .w suffix
>>> is for Thumb mode.
>>
>> Anton was claiming that too, but I don't believe it. A8.2 says .w
>> "has no effect" when targeting ARM, and the Darwin assembler duly
>> ignores it, correctly IMO.
>
> Even if the Darwin assembler ignores it, it's still weird. The ".w"
> suffix only makes sense in Thumb mode, can you fix it?
I am not saying this is OK because the Darwin assembler ignores it, I
am saying it is conformant with the spec. Did you look at A8.2?
> Also, I suspect the llvm integrated assembler won't like it.
Then it should be fixed.
More information about the llvm-commits
mailing list