diff options
author | David Majnemer <david.majnemer@gmail.com> | 2016-05-19 20:03:16 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2016-05-19 20:03:16 +0000 |
commit | 9572372a311790dd1f29096bd683c59ffaf3ff53 (patch) | |
tree | ee6975dd3aafdd1b03424ac245e3269ad1a45bbb /clang/lib/CodeGen/CGOpenCLRuntime.cpp | |
parent | 37e2664f304c25e5b69f4fb0a43ee3995455ac9e (diff) | |
download | bcm5719-llvm-9572372a311790dd1f29096bd683c59ffaf3ff53.tar.gz bcm5719-llvm-9572372a311790dd1f29096bd683c59ffaf3ff53.zip |
[Target] Don't return a std::string in getRegAsmName
getRegAsmName ends up making a copy of the register's name in order to
make a lower-case version of it. This is bad because
getRegForInlineAsmConstraint, it's sole caller, does a lowercase
comparison anyway.
This resulted in a significant regression in compile time for the Linux
kernel because getRegAsmName is called in a loop by
getRegForInlineAsmConstraint.
Instead, forgo the call to lower in getRegAsmName and have it return a
StringRef.
No functionality change is intended.
llvm-svn: 270099
Diffstat (limited to 'clang/lib/CodeGen/CGOpenCLRuntime.cpp')
0 files changed, 0 insertions, 0 deletions