[LLVMdev] Emit 4-byte-displacement jump instructions instead of short one-byte-displacement jump instructions, when generating machine code, under x86_64
Craig Topper
craig.topper at gmail.com
Fri Mar 13 18:11:10 PDT 2015
There is an -mc-relax-all command line flag that should do this. It will
also use longer forms of some adds, subs, etc. Not sure how to set it from
clang, but hopefully this helps point you in the right direction.
On Fri, Mar 13, 2015 at 1:42 PM, Yue Chen <ychen.contact at gmail.com> wrote:
> Dear all,
>
> We are working on a research project based on LLVM. I wonder if there is
> any easy way to make LLVM
> NOT emit short jump instructions with 1-byte-displacement, like "75 30
> JNE +30", "eb 1a JMP +1a", etc;
> instead only emit 4-byte-displacement jump instructions with 3-byte zero
> paddings, like
> "0f 85 30 00 00 00 JNE +30", "e9 1a 00 00 00 JMPQ +1a", etc., under
> the x86_64 architecture.
> Apparently, this would increase the code size.
>
> Best regards and thanks,
> Yue
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
--
~Craig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150313/ebd06933/attachment.html>
More information about the llvm-dev
mailing list