etc:users:jcmvbkbc:binutils-xtensa
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Next revisionBoth sides next revision | ||
etc:users:jcmvbkbc:binutils-xtensa [2024/02/25 14:28] – jcmvbkbc | etc:users:jcmvbkbc:binutils-xtensa [2024/03/06 05:22] – add TLS link time optimizations jcmvbkbc | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== binutils support for Xtensa ===== | + | ====== binutils support for Xtensa |
* git tree: https:// | * git tree: https:// | ||
- | ==== FDPIC support ==== | + | ===== FDPIC support |
* [+] static linking | * [+] static linking | ||
Line 11: | Line 11: | ||
* [-] TLS | * [-] TLS | ||
- | ==== FDPIC instruction sequences ==== | + | ===== FDPIC instruction sequences |
- | === Local call ==== | + | ==== Local call ==== |
Default local call | Default local call | ||
Line 44: | Line 44: | ||
</ | </ | ||
- | === PLT call ==== | + | ==== PLT call ==== |
Obvious version: | Obvious version: | ||
Line 73: | Line 73: | ||
</ | </ | ||
that reduces the inline part from 14 to 5 bytes, but adds two jumps to each call and some special logic to the resolver to avoid name resolution on each call. | that reduces the inline part from 14 to 5 bytes, but adds two jumps to each call and some special logic to the resolver to avoid name resolution on each call. | ||
+ | |||
+ | ==== TLS Support ==== | ||
=== TLS General Dynamic === | === TLS General Dynamic === | ||
< | < | ||
- | +0: | + | +0: |
- | +3: | + | +3: |
- | +5: | + | +5: |
- | +7: | + | +7: |
- | +9: | + | +9: |
- | +11: callx0 | + | +11: callx0 |
</ | </ | ||
Line 118: | Line 120: | ||
+3: | +3: | ||
+6: | +6: | ||
+ | </ | ||
+ | |||
+ | ==== Linker optimizations ==== | ||
+ | |||
+ | === General Dynamic -> Initial Exec === | ||
+ | |||
+ | < | ||
+ | +0: | ||
+ | +3: | ||
+ | +5: | ||
+ | +7: | ||
+ | +9: | ||
+ | +12: callx0 | ||
+ | </ | ||
+ | |||
+ | === General Dynamic -> Local Exec === | ||
+ | |||
+ | < | ||
+ | +0: | ||
+ | +3: | ||
+ | +5: | ||
+ | +7: | ||
+ | +9: | ||
+ | +12: callx0 | ||
</ | </ | ||
etc/users/jcmvbkbc/binutils-xtensa.txt · Last modified: 2024/03/18 14:47 by jcmvbkbc