Displaying 4 results from an estimated 4 matches for "vvtdj".
Did you mean:
vtd
2017 Mar 07
2
[BUG Report] -dead_strip, strips prefix data unconditionally on macOS
...ointing to the start of
> the prefix data)
>
> this will yield:
>
> $ clang test.s -dead_strip
> ld: warning: N_ALT_ENTRY bit set on first atom in section __TEXT/__text
> And the prefix data will be stripped again.
>
> E.g. what you end up getting is:
>
> $ otool -vVtdj a.out
> a.out:
> _main:
> 0000000100000fb5 ff c0 incl %eax
> 0000000100000fb7 c3 retq
>
> instead of what we’d like to get:
>
> otool -vVtdj a.out
> a.out:
> _main.dsp:
> 0000000100000fb1 01 00 addl %eax, (%rax)
> 0000000100000...
2017 Mar 07
4
[BUG Report] -dead_strip, strips prefix data unconditionally on macOS
...ms to do the trick!
>
> $ cat test.s
> .section __TEXT,__text
> .globl _main
>
> .long 1
> _main:
> inc %eax
> ret
>
> .alt_entry _main
> _main.dsp = _main-4
>
> .subsections_via_symbols
>
>
> $ clang test.s -dead_strip
> $ otool -vVtdj a.out
> a.out:
> _main.dsp:
> 0000000100000fb1 01 00 addl %eax, (%rax)
> 0000000100000fb3 00 00 addb %al, (%rax)
> _main:
> 0000000100000fb5 ff c0 incl %eax
> 0000000100000fb7 c3 retq
>
>
>
> However, now I need to fig...
2017 Mar 07
2
[BUG Report] -dead_strip, strips prefix data unconditionally on macOS
...gt; > .globl _main
> >
> > .long 1
> > _main:
> > inc %eax
> > ret
> >
> > .alt_entry _main
> > _main.dsp = _main-4
> >
> > .subsections_via_symbols
> >
> >
> > $ clang test.s -dead_strip
> > $ otool -vVtdj a.out
> > a.out:
> > _main.dsp:
> > 0000000100000fb1 01 00 addl %eax, (%rax)
> > 0000000100000fb3 00 00 addb %al, (%rax)
> > _main:
> > 0000000100000fb5 ff c0 incl %eax
> > 0000000100000fb7 c3 retq
> >
&...
2017 Mar 06
6
[BUG Report] -dead_strip, strips prefix data unconditionally on macOS
That is in theory what omitting the .subsections_via_symbols directive is
supposed to do, but in an experiment I ran a year or two ago I found that
the Mach-O linker was still dead stripping on symbol boundaries with this
directive omitted.
In any case, a more precise approach has more recently (~a few months ago)
become possible. There is a relatively new asm directive called .altentry
that, as