[LLVMdev] clang .code16 with -Os producing larger code that it needs to
David Woodhouse
dwmw2 at infradead.org
Mon Feb 23 04:07:53 PST 2015
On Fri, 2015-02-20 at 13:47 -0500, Rafael EspĂndola wrote:
> > Your task, should you choose to accept it, is to make it cope with other
> > forms of relaxation where necessary.
>
> And if not, please open a bug :-)
http://llvm.org/bugs/show_bug.cgi?id=22662
FWIW I could reproduce the 'movl foo, %ebx' one but a relative jump
*was* using 16 bits (although gas uses 8):
$ cat foo.S
.code16
jae foo
movl (foo), %ebx
foo:
$ gcc -c -oa.out foo.S ; llvm-objdump -d -triple=i686-pc-linux-code16
a.out: file format ELF64-x86-64
Disassembly of section .text:
.text:
0: 73 05 jae 5
2: 66 8b 1e 00 00 movl 0, %ebx
$ llvm-mc -filetype=obj foo.S | llvm-objdump -d -triple=i686-pc-linux-code16 -
<stdin>: file format ELF64-x86-64
Disassembly of section .text:
.text:
0: 0f 83 08 00 jae 8
4: 67 66 8b 1d 00 00 00 00 movl 0, %ebx
--
dwmw2
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 5745 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150223/da6fa2ea/attachment.bin>
More information about the llvm-dev
mailing list