- Jul 14, 2013
-
-
Nadav Rotem authored
SLPVectorizer: change the order in which we search for vectorization candidates. Do stores first and PHIs second. llvm-svn: 186277
-
Tobias Grosser authored
llvm-svn: 186276
-
Richard Smith authored
that these headers should not be included more than once, they are in fact included twice when building our builtins module (in order for it to generate submodules for them), and without this, any modular build enabling AVX and including any builtin header fails. Testing this is tricky because including any of these headers in a modular build is liable to fail, due to unrelated builtin headers in the same module including headers which might not be available on the system running the tests. Suggestion on that front are welcome (but we're getting close to being able to run a buildbot that has modules enabled for all tests, which would nicely solve the testing problem). llvm-svn: 186275
-
Craig Topper authored
llvm-svn: 186274
-
Andrew Trick authored
The great thing about the SCEVAddRec No-Wrap flag (unlike nsw/nuw) is that is can be preserved while normalizing (reassociating and factoring). The bad thing is that is can't be tranfered back to IR, which is one of the reasons I don't like the concept of SCEVExpander. Sorry, I can't think of a direct way to test this, which is why these were FIXMEs for so long. I just think it's a good time to finally clean it up. llvm-svn: 186273
-
Andrew Trick authored
Fixes PR16600. llvm-svn: 186272
-
Stephen Lin authored
llvm-svn: 186271
-
Richard Smith authored
global allocation or deallocation function, that should not cause that global allocation or deallocation function to become unavailable. llvm-svn: 186270
-
Stephen Lin authored
Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. This conversion was done with the following bash script: find test/Transforms -name "*.ll" | \ while read NAME; do echo "$NAME" if ! grep -q "^; *RUN: *llc" $NAME; then TEMP=`mktemp -t temp` cp $NAME $TEMP sed -n "s/^define [^@]*@\([A-Za-z0-9_]*\)(.*$/\1/p" < $NAME | \ while read FUNC; do sed -i '' "s/;\(.*\)\([A-Za-z0-9_]*\):\( *\)define\([^@]*\)@$FUNC\([( ]*\)\$/;\1\2-LABEL:\3define\4@$FUNC(/g" $TEMP done mv $TEMP $NAME fi done llvm-svn: 186269
-
Stephen Lin authored
This update was done with the following bash script: find test/Transforms -name "*.ll" | \ while read NAME; do echo "$NAME" if ! grep -q "^; *RUN: *llc" $NAME; then TEMP=`mktemp -t temp` cp $NAME $TEMP sed -n "s/^define [^@]*@\([A-Za-z0-9_]*\)(.*$/\1/p" < $NAME | \ while read FUNC; do sed -i '' "s/;\(.*\)\([A-Za-z0-9_]*\):\( *\)@$FUNC\([( ]*\)\$/;\1\2-LABEL:\3@$FUNC(/g" $TEMP done mv $TEMP $NAME fi done llvm-svn: 186268
-
Stephen Lin authored
Modify two Transforms tests to explicitly check for full function names in some cases, rather than just a common prefix. No functionality change. (This is to avoid confusing a scripted mass update of these tests to use CHECK-LABEL) llvm-svn: 186267
-
David Blaikie authored
Requested by Richard Smith in post-commit review of r186262 llvm-svn: 186266
-
David Blaikie authored
Introduced in r186262 & found by the hexagon buildbots (but owing to this being UB, that's random chance - so there's no additional test case here) llvm-svn: 186265
-
Stephen Lin authored
llvm-svn: 186264
-
Stephen Lin authored
llvm-svn: 186263
-
- Jul 13, 2013
-
-
David Blaikie authored
PR16214, PR14467: DebugInfo: use "RequireCompleteType" to decide when to emit the full definition of a type in -flimit-debug-info This simplifies the core benefit of -flimit-debug-info by taking a more systematic approach to avoid emitting debug info definitions for types that only require declarations. The previous ad-hoc approach (3 cases removed in this patch) had many holes. The general approach (adding a bit to TagDecl and callback through ASTConsumer) has been discussed with Richard Smith - though always open to revision. llvm-svn: 186262
-
David Blaikie authored
Test coverage for non-dependent pack expansions doesn't demonstrate a failure prior to this patch (a follow-up commit improving debug info will cover this commit specifically) but covers a related hole in our test coverage. Reviewed by Richard Smith & Eli Friedman. llvm-svn: 186261
-
David Blaikie authored
These types are not dependent in this context, so just look through the sugar. Review by Richard Smith & Eli Friedman. llvm-svn: 186260
-
Tobias Grosser authored
We also move the enum to UPPERCASE. llvm-svn: 186259
-
Stephen Lin authored
Convert CodeGen/*/*.ll tests to use the new CHECK-LABEL for easier debugging. No functionality change and all tests pass after conversion. This was done with the following sed invocation to catch label lines demarking function boundaries: sed -i '' "s/^;\( *\)\([A-Z0-9_]*\):\( *\)test\([A-Za-z0-9_-]*\):\( *\)$/;\1\2-LABEL:\3test\4:\5/g" test/CodeGen/*/*.ll which was written conservatively to avoid false positives rather than false negatives. I scanned through all the changes and everything looks correct. llvm-svn: 186258
-
David Blaikie authored
This reverts commit b18b043a5a37f76803d89467e46bcac286c0ecae. Reapply with fix for the configure+make build (missing include of ASTContext.h). llvm-svn: 186257
-
Arnold Schwaighofer authored
If an outside loop user of the reduction value uses the header phi node we cannot just reduce the vectorized phi value in the vector code epilog because we would loose VF-1 reductions. lp: p = phi (0, lv) lv = lv + 1 ... brcond , lp, outside outside: usr = add 0, p (Say the loop iterates two times, the value of p coming out of the loop is one). We cannot just transform this to: vlp: p = phi (<0,0>, lv) lv = lv + <1,1> .. brcond , lp, outside outside: p_reduced = p[0] + [1]; usr = add 0, p_reduced (Because the original loop iterated two times the vectorized loop would iterate one time, but p_reduced ends up being zero instead of one). We would have to execute VF-1 iterations in the scalar remainder loop in such cases. For now, just disable vectorization. PR16522 llvm-svn: 186256
-
David Blaikie authored
This reverts commit r186253. This is failing to link under Configure+Make on the buildbots for reasons I don't immediately understand. llvm-svn: 186255
-
Tobias Grosser authored
llvm-svn: 186254
-
David Blaikie authored
Fix some uninstantiable code in ASTVector::insert. I've added a cheap-and-dirty compile test for this, because I don't have the time to figure out a nice way to get a real ASTContext to implement executable tests - but we probably should have them for this ADT. llvm-svn: 186253
-
Joerg Sonnenberger authored
between ELF (Linux, FreeBSD, NetBSD) and OSX as platform for the assembler dialect. llvm-svn: 186252
-
Tobias Grosser authored
We make the option a clear choice between the two analysis types and add descriptions about the difference between the two. llvm-svn: 186251
-
Benjamin Kramer authored
llvm-svn: 186250
-
Fariborz Jahanian authored
llvm-svn: 186249
-
Tobias Grosser authored
llvm-svn: 186248
-
Benjamin Kramer authored
And .* did just match about anything anyways. llvm-svn: 186246
-
Rafael Espindola authored
It is failing with YAMLTest.cpp:38: instantiated from here YAMLTraits.h:226: error: 'llvm::yaml::MappingTraits<<unnamed>::BinaryHolder>::mapping' is not a valid template argument for type 'void (*)(llvm::yaml::IO&, <unnamed>::BinaryHolder&)' because function 'static void llvm::yaml::MappingTraits<<unnamed>::BinaryHolder>::mapping(llvm::yaml::IO&, <unnamed>::BinaryHolder&)' has not external linkage llvm-svn: 186245
-
Craig Topper authored
llvm-svn: 186244
-
Craig Topper authored
llvm-svn: 186243
-
Andrew Trick authored
llvm-svn: 186242
-
Andrew Trick authored
In general, one should always complete CFG modifications first, update CFG-based analyses, like Dominatores and LoopInfo, then generate instruction sequences. LoopVectorizer was creating a new loop, calling SCEVExpander to generate checks, then updating LoopInfo. I just changed the order. llvm-svn: 186241
-
Rafael Espindola authored
Looks like on mingw we get bogus last modification times on directories. Should fix the mingw bots. llvm-svn: 186240
-
Rafael Espindola authored
llvm-svn: 186239
-
Rafael Espindola authored
original message: Fix a off by one error about which members need to use the string table. llvm-svn: 186238
-
Marshall Clow authored
llvm-svn: 186237
-