search for: codemodel1_small_lto

Displaying 12 results from an estimated 12 matches for "codemodel1_small_lto".

2016 May 29
0
[cfe-dev] How to debug if LTO generate wrong code?
...w the LLVM LTO code model issue. $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=small -o codemodel1_small_lto.bin You will see the codemodel1_large_lto.bin and codemodel1_small_lto.bin are exactly the same! And if you disassemble the codemodel1_large_lto.bin, you will see it uses the small code model (32-bit RIP-relative), not large, to do addressing as below. $ objdump -dS codemodel1_large_lto.bin...
2016 May 29
4
[cfe-dev] How to debug if LTO generate wrong code?
...ode model issue. > $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin > $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin > $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin > $ clang -g -O0 -flto codemodel1.c -mcmodel=small -o codemodel1_small_lto.bin > > You will see the codemodel1_large_lto.bin and codemodel1_small_lto.bin are exactly the same! > And if you disassemble the codemodel1_large_lto.bin, you will see it uses the small code model (32-bit RIP-relative), not large, to do addressing as below. > > $ objdump -dS cod...
2016 May 17
2
[cfe-dev] How to debug if LTO generate wrong code?
> On May 17, 2016, at 11:21 AM, Umesh Kalappa <umesh.kalappa0 at gmail.com> wrote: > > Steven, > > As mehdi stated , the optimisation level is specific to linker and it > enables Inter-Pro opts passes ,please refer function To be very clear: the -O option may trigger *linker* optimizations as well, independently of LTO. -- Mehdi > >
2016 May 30
0
[cfe-dev] How to debug if LTO generate wrong code?
...show the LLVM LTO code model issue. $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=small -o codemodel1_small_lto.bin You will see the codemodel1_large_lto.bin and codemodel1_small_lto.bin are exactly the same! And if you disassemble the codemodel1_large_lto.bin, you will see it uses the small code model (32-bit RIP-relative), not large, to do addressing as below. $ objdump -dS codemodel1_large_lto.bin int...
2016 May 30
2
[cfe-dev] How to debug if LTO generate wrong code?
...ode model issue. > $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin > $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin > $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin > $ clang -g -O0 -flto codemodel1.c -mcmodel=small -o codemodel1_small_lto.bin > > You will see the codemodel1_large_lto.bin and codemodel1_small_lto.bin are exactly the same! > And if you disassemble the codemodel1_large_lto.bin, you will see it uses the small code model (32-bit RIP-relative), not large, to do addressing as below. > > $ objdump -dS cod...
2016 May 30
0
[cfe-dev] How to debug if LTO generate wrong code?
...ode model issue. > $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin > $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin > $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin > $ clang -g -O0 -flto codemodel1.c -mcmodel=small -o codemodel1_small_lto.bin > > You will see the codemodel1_large_lto.bin and codemodel1_small_lto.bin are > exactly the same! > And if you disassemble the codemodel1_large_lto.bin, you will see it uses > the small code model (32-bit RIP-relative), not large, to do addressing as > below. > > $ objd...
2016 May 30
0
[cfe-dev] How to debug if LTO generate wrong code?
...show the LLVM LTO code model issue. $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=small -o codemodel1_small_lto.bin You will see the codemodel1_large_lto.bin and codemodel1_small_lto.bin are exactly the same! And if you disassemble the codemodel1_large_lto.bin, you will see it uses the small code model (32-bit RIP-relative), not large, to do addressing as below. $ objdump -dS codemodel1_large_lto.bin int...
2016 May 30
7
[cfe-dev] How to debug if LTO generate wrong code?
...ode model issue. > $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin > $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin > $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin > $ clang -g -O0 -flto codemodel1.c -mcmodel=small -o codemodel1_small_lto.bin > > You will see the codemodel1_large_lto.bin and codemodel1_small_lto.bin are exactly the same! > And if you disassemble the codemodel1_large_lto.bin, you will see it uses the small code model (32-bit RIP-relative), not large, to do addressing as below. > > $ objdump -dS cod...
2016 May 30
0
[cfe-dev] How to debug if LTO generate wrong code?
...show the LLVM LTO code model issue. $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=small -o codemodel1_small_lto.bin You will see the codemodel1_large_lto.bin and codemodel1_small_lto.bin are exactly the same! And if you disassemble the codemodel1_large_lto.bin, you will see it uses the small code model (32-bit RIP-relative), not large, to do addressing as below. $ objdump -dS codemodel1_large_lto.bin int...
2016 May 30
1
[cfe-dev] How to debug if LTO generate wrong code?
...; > $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin > > $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin > > $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin > > $ clang -g -O0 -flto codemodel1.c -mcmodel=small -o codemodel1_small_lto.bin > > > > You will see the codemodel1_large_lto.bin and codemodel1_small_lto.bin are > > exactly the same! > > And if you disassemble the codemodel1_large_lto.bin, you will see it uses > > the small code model (32-bit RIP-relative), not large, to do addressing as &gt...
2016 May 30
2
[cfe-dev] How to debug if LTO generate wrong code?
...ode model issue. > $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin > $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin > $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin > $ clang -g -O0 -flto codemodel1.c -mcmodel=small -o codemodel1_small_lto.bin > > You will see the codemodel1_large_lto.bin and codemodel1_small_lto.bin are exactly the same! > And if you disassemble the codemodel1_large_lto.bin, you will see it uses the small code model (32-bit RIP-relative), not large, to do addressing as below. > > $ objdump -dS cod...
2016 May 30
0
[cfe-dev] How to debug if LTO generate wrong code?
...show the LLVM LTO code model issue. $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=small -o codemodel1_small_lto.bin You will see the codemodel1_large_lto.bin and codemodel1_small_lto.bin are exactly the same! And if you disassemble the codemodel1_large_lto.bin, you will see it uses the small code model (32-bit RIP-relative), not large, to do addressing as below. $ objdump -dS codemodel1_large_lto.bin int...