diff options
author | Craig Topper <craig.topper@intel.com> | 2017-07-15 22:06:19 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2017-07-15 22:06:19 +0000 |
commit | 0b4b4e388d551b542c2a09a17fccb77f40498700 (patch) | |
tree | 9f7045bb3865391b006f86e73c1ca20e61144c89 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | d918d5b36b71450898f4f8be94f4c6098633567b (diff) | |
download | bcm5719-llvm-0b4b4e388d551b542c2a09a17fccb77f40498700.tar.gz bcm5719-llvm-0b4b4e388d551b542c2a09a17fccb77f40498700.zip |
[IR] Implement Constant::isNegativeZeroValue/isZeroValue/isAllOnesValue/isOneValue/isMinSignedValue for ConstantDataVector without going through getElementAsConstant
Summary:
Currently these methods call ConstantDataVector::getSplatValue which uses getElementsAsConstant to create a Constant object representing the element value. This method incurs a map lookup to see if we already have created such a Constant before and if not allocates a new Constant object.
This patch changes these methods to use getElementAsAPFloat and getElementAsInteger so we can just examine the data values directly.
Reviewers: spatel, pcc, dexonsmith, bogner, craig.topper
Reviewed By: craig.topper
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D35040
llvm-svn: 308112
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions