about summary refs log tree commit diff
path: root/src/libsyntax/parse
diff options
context:
space:
mode:
authorGabriel Majeri <gabriel.majeri6@gmail.com>2018-09-26 19:19:55 +0300
committerGabriel Majeri <gabriel.majeri6@gmail.com>2018-10-11 21:11:00 +0300
commit6009da079419c9693fe4965ecacbd473c2553173 (patch)
tree6d57deb8d993023a394c62d3fcc23cdd84319453 /src/libsyntax/parse
parent2243fabd8f25c46a4a76199f10a2cd9adbb5c418 (diff)
downloadrust-6009da079419c9693fe4965ecacbd473c2553173.tar.gz
rust-6009da079419c9693fe4965ecacbd473c2553173.zip
Support for disabling the PLT on ELF targets
Disable the PLT where possible to improve performance
for indirect calls into shared libraries.

This optimization is enabled by default where possible.

- Add the `NonLazyBind` attribute to `rustllvm`:
  This attribute informs LLVM to skip PLT calls in codegen.

- Disable PLT unconditionally:
  Apply the `NonLazyBind` attribute on every function.

- Only enable no-plt when full relro is enabled:
  Ensures we only enable it when we have linker support.

- Add `-Z plt` as a compiler option
Diffstat (limited to 'src/libsyntax/parse')
0 files changed, 0 insertions, 0 deletions