summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/StackProtector.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2017-05-18 16:45:36 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2017-05-18 16:45:36 +0000
commita6465bbb726badf86e520d15d29b6a65a2d1007d (patch)
treeda6e6a0d2e88de46f878ca93d433ad7def4d8c1f /llvm/lib/CodeGen/StackProtector.cpp
parent246c1c47ea6137b5b36352e84eadb3329d7fcba2 (diff)
downloadbcm5719-llvm-a6465bbb726badf86e520d15d29b6a65a2d1007d.tar.gz
bcm5719-llvm-a6465bbb726badf86e520d15d29b6a65a2d1007d.zip
Alternative way to detemplate GotSection.
GetSection is a template because write calls relocate. relocate has two parts. The non alloc code really has to be a template, as it is looking a raw input file data. The alloc part is only a template because of getSize. This patch folds the value of getSize early, detemplates getRelocTargetVA and splits relocate into a templated non alloc case and a regular function for the alloc case. This has the nice advantage of making sure we collect all the information we need for relocations before getting to InputSection::relocateNonAlloc. Since we know got is alloc, it can just call the function directly and avoid the template. llvm-svn: 303355
Diffstat (limited to 'llvm/lib/CodeGen/StackProtector.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud