projects
/
oota-llvm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added support to have TableGen provide information if an intrinsic (core
[oota-llvm.git]
/
utils
/
TableGen
/
CodeGenDAGPatterns.cpp
diff --git
a/utils/TableGen/CodeGenDAGPatterns.cpp
b/utils/TableGen/CodeGenDAGPatterns.cpp
index e70bdb6f60263c2eefdee47208d0f9668202bcff..6e7dd1eae05dd9a946434f53196f2b939d24f9f5 100644
(file)
--- a/
utils/TableGen/CodeGenDAGPatterns.cpp
+++ b/
utils/TableGen/CodeGenDAGPatterns.cpp
@@
-842,7
+842,7
@@
bool TreePatternNode::ApplyTypeConstraints(TreePattern &TP, bool NotRegisters) {
// If sign-extended doesn't fit, does it fit as unsigned?
unsigned ValueMask;
unsigned UnsignedVal;
// If sign-extended doesn't fit, does it fit as unsigned?
unsigned ValueMask;
unsigned UnsignedVal;
- ValueMask = unsigned(
MVT(VT).getIntegerVTBitMask(
));
+ ValueMask = unsigned(
~uint32_t(0UL) >> (32-Size
));
UnsignedVal = unsigned(II->getValue());
if ((ValueMask & UnsignedVal) != UnsignedVal) {
UnsignedVal = unsigned(II->getValue());
if ((ValueMask & UnsignedVal) != UnsignedVal) {
@@
-1303,7
+1303,8
@@
void TreePattern::dump() const { print(*cerr.stream()); }
// FIXME: REMOVE OSTREAM ARGUMENT
CodeGenDAGPatterns::CodeGenDAGPatterns(RecordKeeper &R) : Records(R) {
// FIXME: REMOVE OSTREAM ARGUMENT
CodeGenDAGPatterns::CodeGenDAGPatterns(RecordKeeper &R) : Records(R) {
- Intrinsics = LoadIntrinsics(Records);
+ Intrinsics = LoadIntrinsics(Records, false);
+ TgtIntrinsics = LoadIntrinsics(Records, true);
ParseNodeInfo();
ParseNodeTransforms();
ParseComplexPatterns();
ParseNodeInfo();
ParseNodeTransforms();
ParseComplexPatterns();