[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:10:50 PDT 2009
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.
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
More information about the llvm-commits
mailing list