[llvm-commits] [llvm] r72154 - in /llvm/trunk: lib/Target/X86/X86InstrInfo.td test/CodeGen/X86/call-imm.ll

Evan Cheng evan.cheng at apple.com
Tue May 19 20:12:37 PDT 2009


On May 19, 2009, at 8:10 PM, Evan Cheng wrote:

>
> On May 19, 2009, at 6:41 PM, Dan Gohman wrote:
>
>>>
>>>
>>> @@ -562,7 +563,7 @@
>>>     Uses = [ESP] in {
>>>   def CALLpcrel32 : Ii32<0xE8, RawFrm, (outs), (ins i32imm:
>>> $dst,variable_ops),
>>>                          "call\t${dst:call}", [(X86call imm:$dst)]>,
>>> -                      Requires<[In32BitMode]>;
>>> +                      Requires<[In32BitMode, IsNotPIC]>;
>>
>> This looks like it says that CALLpcrel32 is valid only for PIC,
>> which isn't true. It looks like the (X86call imm:$dst) pattern
>> should be moved out into a "def : Pat" like the other patterns
>> for CALLpcrel32, so that the Requires<[IsNotPIC]> can apply to
>> just that pattern, not the instruction itself.
>
> The requirement does only apply for the pattern. I agree it reads a
> bit funny. I can move it to a def : Pat.
>
>>
>> Also, it looks like the Darwin linker rejects "call 12345678" in
>> dynamic-no-pic mode as well as PIC mode.

Is it only Darwin linker that rejects this?

Evan

>
> Ah right. I'll fix.
>
> Evan
>
>>
>> Dan
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list