Craig Topper
f4b449cec2
[TableGen] Change OpInit::getNumOperands and getOperand to use unsigned integers. NFC
...
llvm-svn: 239210
2015-06-06 01:34:04 +00:00
Craig Topper
1af1566ce6
[TableGen] Remove trailing whitespace, add space between 'if' and paren, other formatting fixes. NFC
...
llvm-svn: 239209
2015-06-06 01:34:01 +00:00
Craig Topper
5a2dfdcd20
[TableGen] Remove unnecessary temporary. NFC
...
llvm-svn: 239208
2015-06-06 01:34:00 +00:00
Craig Topper
5904beb666
[TableGen] Fold variable declaration/initialization into if condition for a couple short lived variables. NFC
...
llvm-svn: 239207
2015-06-06 01:33:58 +00:00
Craig Topper
daf263de84
[TableGen] Remove unnecessary outer 'if' and merge it's conditions into the inner 'if's. NFC
...
llvm-svn: 239206
2015-06-06 01:33:55 +00:00
Craig Topper
25a849ca02
[TableGen] Fold variable declarations with their assignments. NFC
...
llvm-svn: 239205
2015-06-06 00:44:45 +00:00
Craig Topper
5ec17246a2
[TableGen] Use range-based for loops. NFC
...
llvm-svn: 239022
2015-06-04 07:40:14 +00:00
Craig Topper
b849203c94
[TableGen] Merge single prefix bit in RecordVal into PointerIntPair with Name to reduce memory usage.
...
llvm-svn: 239021
2015-06-04 07:40:12 +00:00
Craig Topper
8eb764c5a3
[TableGen] Use range-based for loops. NFC
...
llvm-svn: 238808
2015-06-02 06:19:28 +00:00
Craig Topper
664f6a0405
[TableGen] Rename ListInit::getSize to just 'size' to be more consistent.
...
llvm-svn: 238806
2015-06-02 04:15:57 +00:00
Craig Topper
ef0578a8cb
[TableGen] Use range-based for loops. NFC.
...
llvm-svn: 238805
2015-06-02 04:15:51 +00:00
Craig Topper
6548196c6f
[TableGen] Move a couple virtual methods out of line so vtable anchors can be removed. NFC
...
llvm-svn: 238727
2015-06-01 06:44:18 +00:00
Craig Topper
15864f1518
[TableGen] Merge RecTy::typeIsConvertibleTo and RecTy::baseClassOf. NFC
...
typeIsConvertibleTo was just calling baseClassOf(this) on the argument passed to it, but there weren't different signatures for baseClassOf so passing 'this' didn't really do anything interesting. typeIsConvertibleTo could have just been a non-virtual method in RecTy. But since that would be kind of a silly method, I instead re-distributed the logic from baseClassOf into typeIsConvertibleTo.
llvm-svn: 238648
2015-05-30 07:36:01 +00:00
Craig Topper
9581906983
[TableGen] Remove all the variations of RecTy::convertValue and just handle the conversions in convertInitializerTo directly. This saves a bunch of vtable entries. NFC
...
llvm-svn: 238646
2015-05-30 07:34:51 +00:00
Benjamin Kramer
f5e2fc474d
Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types
...
If the type isn't trivially moveable emplace can skip a potentially
expensive move. It also saves a couple of characters.
Call sites were found with the ASTMatcher + some semi-automated cleanup.
memberCallExpr(
argumentCountIs(1), callee(methodDecl(hasName("push_back"))),
on(hasType(recordDecl(has(namedDecl(hasName("emplace_back")))))),
hasArgument(0, bindTemporaryExpr(
hasType(recordDecl(hasNonTrivialDestructor())),
has(constructExpr()))),
unless(isInTemplateInstantiation()))
No functional change intended.
llvm-svn: 238602
2015-05-29 19:43:39 +00:00
Craig Topper
2af5e6fbf9
[TableGen] Remove convertValue functions for UnOpInit, BinOpInit, and TernOpInit as they weren't able to be called.
...
I don't think converting the inputs to the Ops was the right behavior anyway.
llvm-svn: 238543
2015-05-29 05:51:32 +00:00
Benjamin Kramer
dba7ee90b5
Don't call utostr in Twine/raw_ostream contexts.
...
Creating temporary std::strings there is unnecessary.
llvm-svn: 238412
2015-05-28 11:24:24 +00:00
Craig Topper
85693aeb43
[TableGen] Use DefInit::getAsString instead of getDef()->getName(). NFC
...
llvm-svn: 238399
2015-05-28 06:38:32 +00:00
Craig Topper
2a8d4b294c
[TableGen] Don't convert types to strings to query what they are. Just use 'isa'
...
llvm-svn: 238398
2015-05-28 06:38:28 +00:00
Craig Topper
f58341c6ee
[TableGen] Fix line wrapping logic for the autogenerated header to use math that makes more sense (at least to me).
...
The old code had a bug if the description was between 75 and 85 characters or so as it substracted PSLen from Desc.size() instead of MAX_LINE_LEN in the compare. It also calculated odd values for PosE on the last split and just let StringRef::slice take care of it being larger than the description string.
llvm-svn: 238187
2015-05-26 08:07:56 +00:00
Craig Topper
33684f9e64
[TableGen] Rewrite an assert to not do a bunch unsigned math and then try to ensure the result is a positive number.
...
I think the fact that it was explicitly excluding 0 kept this from being a tautology. The exclusion of 0 for the old math was also a bug that's easily hit if the description gets split into multiple lines.
llvm-svn: 238186
2015-05-26 08:07:49 +00:00
Craig Topper
cb7648be17
[TableGen] Put a space between '*' and description in the autogenerated tablegen header. Minor cleanup in surrounding code.
...
llvm-svn: 238185
2015-05-26 08:07:45 +00:00
Craig Topper
e59cd0b9ec
[TableGen] Fix indentation. NFC
...
llvm-svn: 238181
2015-05-26 06:48:47 +00:00
Craig Topper
1407b17711
[TableGen] Include header for each cpp file first. NFC
...
llvm-svn: 238180
2015-05-26 06:48:46 +00:00
Craig Topper
cd371218be
[TableGen] Remove unneeded namespace around a function. Just put llvm:: on the definition since it's already declared in a header file.
...
llvm-svn: 238178
2015-05-26 06:48:41 +00:00
Craig Topper
b7644fd522
[TableGen] Use 'static' instead of an anonymous namespace.
...
llvm-svn: 238177
2015-05-26 06:48:38 +00:00
Hal Finkel
d249736572
[TableGen] Resolve complex def names inside multiclasses
...
We had not been trying hard enough to resolve def names inside multiclasses
that had complex concatenations, etc. Now we'll try harder.
Patch by Amaury Sechet!
llvm-svn: 237877
2015-05-21 04:32:56 +00:00
Craig Topper
259d0c1605
[TableGen] Make some variable names consistent with their type names and just generally consistent across all of the overloads.
...
llvm-svn: 237775
2015-05-20 05:40:13 +00:00
Craig Topper
a74f986aa3
[TableGen] Fix a memory leak.
...
llvm-svn: 237774
2015-05-20 05:40:09 +00:00
Craig Topper
41ce4de0b4
[TableGen] Change 'car' to 'head' and 'cdr' to 'tail' in assert comments. These were the old names for these operations long ago. NFC
...
llvm-svn: 237514
2015-05-16 05:42:13 +00:00
Craig Topper
8ddb0d825d
[TableGen] Remove !! that I can't really explain why I wrote. Also remove some unnecessary curly braces from the same area.
...
llvm-svn: 237513
2015-05-16 05:42:11 +00:00
Craig Topper
6ee494b677
[TableGen] Restructure a loop to make it exit early instead of skipping a portion of the body based on what will also be the terminating condition. NFC
...
llvm-svn: 237511
2015-05-16 05:42:03 +00:00
Justin Bogner
1a9ca774b6
TableGen: Avoid undefined behaviour by doing this shift in int64
...
Found by ubsan. This was taking a bool and left shifting by 32 - the
result is 64 bit, so we should really do the math in a type it fits
in.
llvm-svn: 237345
2015-05-14 06:47:02 +00:00
Craig Topper
b1846a352e
[TableGen] Remove an unnecessary outer 'if' around 3 separate inner ifs. No functional change intended.
...
The outer if had 3 separate conditions ORed together and then the inner ifs detected which of the three conditions it was by using only a portion of the specific condition. Just put the whole condition in each inner if and remove the outer if.
llvm-svn: 237343
2015-05-14 05:54:02 +00:00
Craig Topper
42467f25e4
[TableGen] Simplify some code. NFC
...
llvm-svn: 237342
2015-05-14 05:53:59 +00:00
Craig Topper
ec9072d661
[TableGen] Replace some calls to ListInit::getSize() with ListInit::empty() if it was just comparing to 0. NFC.
...
llvm-svn: 237340
2015-05-14 05:53:53 +00:00
Craig Topper
607ac92dcb
Use ArrayRef::slice instead of manually constructing an ArrayRef from ArrayRef iterators. NFC
...
llvm-svn: 237231
2015-05-13 06:57:51 +00:00
Craig Topper
a0ff540b7e
Remove unnecessary variables by folding calls into for loop header. NFC.
...
llvm-svn: 237090
2015-05-12 05:25:10 +00:00
James Y Knight
e452e27129
Fix tablegen's PrintFatalError function to run registered file
...
cleanups.
Also, change code in tablegen which printed a message and then called
"exit(1)" to use PrintFatalError, instead.
This fixes instances where an empty output file was left behind after
a failed tablegen invocation, which would confuse subsequent ninja
runs into not attempting to rebuild.
Differential Revision: http://reviews.llvm.org/D9608
llvm-svn: 237058
2015-05-11 22:17:13 +00:00
Craig Topper
23fdafe682
[TableGen] Replace 'static_cast' with 'cast'.
...
llvm-svn: 236398
2015-05-04 01:35:42 +00:00
Craig Topper
a9642b4ec8
[TableGen] Formatting cleanup. Mostly removing trailing whitespace and unnecessary curly braces. NFC
...
llvm-svn: 236397
2015-05-04 01:35:39 +00:00
Craig Topper
85c07007ea
[TableGen] Cleanup formatting by moving operators from beginning of line to end of previous line. NFC
...
llvm-svn: 236206
2015-04-30 05:54:22 +00:00
Craig Topper
9ed595e41d
[TableGen] Used range-based for loop. NFC.
...
llvm-svn: 236205
2015-04-30 05:54:20 +00:00
Craig Topper
9ef76499b2
[TableGen] Merge a variable assignment and a return to drop curly braces. Fold an assignment into an if. Use auto on the result of a couple dyn_casts. NFC
...
llvm-svn: 236204
2015-04-30 05:12:52 +00:00
Craig Topper
119998dbf1
[TableGen] Use range-based for loops. NFC.
...
llvm-svn: 236089
2015-04-29 07:13:14 +00:00
Craig Topper
39ba33b8f0
[TableGen] Fold a couple dyn_casts into the ifs that check their results. NFC
...
llvm-svn: 236088
2015-04-29 07:13:12 +00:00
Craig Topper
ed5a950808
[TableGen] Replace some dyn_casts followed by an assert with just a regular cast which asserts internally. NFC
...
llvm-svn: 236087
2015-04-29 07:13:05 +00:00
Craig Topper
eb4d7c6b70
[TableGen] Use range-based for loops. NFC
...
llvm-svn: 236083
2015-04-29 04:43:36 +00:00
Craig Topper
ba6057de71
[TableGen] Don't leak Expanders and Operators in SetTheory.
...
llvm-svn: 235697
2015-04-24 06:49:44 +00:00
Craig Topper
17b3a378c5
[TableGen] Fix all remaining memory leaks of Init and RecTy objects.
...
llvm-svn: 235696
2015-04-24 05:38:48 +00:00