summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Re-XFAIL this test until debug stuff settles down.Bill Wendling2008-12-182-2/+5
| | | | llvm-svn: 61219
* Make LowerSubregs' debug output for EXTRACT_SUBREG consistent withDan Gohman2008-12-181-1/+6
| | | | | | that of INSERT_SUBREG and SUBREG_TO_REG. llvm-svn: 61218
* Fix a copy+pasto in an assertion message.Dan Gohman2008-12-181-1/+1
| | | | llvm-svn: 61217
* Fix indentation level.Dan Gohman2008-12-181-33/+33
| | | | llvm-svn: 61216
* When emitting instructions that define EFLAGS and the EFLAGS value isn'tDan Gohman2008-12-181-7/+23
| | | | | | used, mark the defs as dead. llvm-svn: 61215
* When setting up the frame pointer, add it as a live-in register to allDan Gohman2008-12-181-0/+5
| | | | | | non-entry blocks, so that it doesn't appear use-before-def anywhere. llvm-svn: 61214
* Print subreg information in MachineInstr::dump.Dan Gohman2008-12-181-1/+5
| | | | llvm-svn: 61213
* Don't check initializers when there are dependent types or type-dependent ↵Douglas Gregor2008-12-181-0/+3
| | | | | | expressions involved llvm-svn: 61212
* Fixed x86 code generation of multiple for v2i64. It was incorrect for SSE4.1.Mon P Wang2008-12-184-6/+49
| | | | llvm-svn: 61211
* Added some basic test cases for r61209Mon P Wang2008-12-1818-0/+564
| | | | llvm-svn: 61210
* Added support for vector widening.Mon P Wang2008-12-1811-83/+1332
| | | | llvm-svn: 61209
* Ultrasimplistic sketch for the parsing of C++ template-ids. This won'tDouglas Gregor2008-12-1813-30/+296
| | | | | | | | become useful or correct until we (1) parse template arguments correctly, (2) have some way to turn template-ids into types, declarators, etc., and (3) have a real representation of templates. llvm-svn: 61208
* Use '&' to test StartOfLine flag.Ted Kremenek2008-12-181-1/+1
| | | | llvm-svn: 61205
* Removed a slot in ObjCMemRegExpr used inFariborz Jahanian2008-12-187-17/+40
| | | | | | code gen which did not belong there. llvm-svn: 61203
* Fix http://llvm.org/bugs/show_bug.cgi?id=3189.Steve Naroff2008-12-182-2/+52
| | | | llvm-svn: 61202
* Remove dead comments.Evan Cheng2008-12-181-3/+0
| | | | llvm-svn: 61201
* add a simple fast-path for the common case of [] and [4] in Chris Lattner2008-12-181-1/+32
| | | | | | | | array size declarators. No need to go through all the trouble of parsing crazy things like [static const 4] when most code doesn't need it. llvm-svn: 61200
* rename argumentChris Lattner2008-12-181-1/+1
| | | | llvm-svn: 61199
* disallow attributes in a few callers of ParseTypeQualifierListOpt,Chris Lattner2008-12-182-14/+17
| | | | | | | these completely ignore parsed attributes anyway, so don't try to read them. llvm-svn: 61198
* Clean up the C89/C++ warnings about C99 array features to not Chris Lattner2008-12-184-18/+20
| | | | | | | | emit duplicate diags (some in parser and some in sema) and to warn about use of typequals in array sizes. This implements PR2759. llvm-svn: 61197
* Oops! Left out a line.Nick Lewycky2008-12-181-0/+1
| | | | | | Simplifying the sdiv might allow further simplifications for our users. llvm-svn: 61196
* Make all the vector elements positive in an srem of constant vector.Nick Lewycky2008-12-182-0/+30
| | | | llvm-svn: 61195
* Fix PR2929 by making bugpoint/code extract propagate the nothrowChris Lattner2008-12-181-0/+4
| | | | | | bit from the original function to the cloned one. llvm-svn: 61194
* Add method used by ImmutableMap GDM specialization.Zhongxing Xu2008-12-181-1/+5
| | | | llvm-svn: 61193
* Allow ABI to use StructRet even for scalar values.Daniel Dunbar2008-12-181-9/+17
| | | | | | | | | | - Update comment to reflect fact that StructRet is now supported for any type (modulo LLVM support). - No functionality change, no scalar types currently use this feature. llvm-svn: 61192
* Fix typo in error message.Mikhail Glushenkov2008-12-181-1/+1
| | | | llvm-svn: 61191
* Recommit this grammar fix that was backed out along with nocapture.Nick Lewycky2008-12-181-5/+5
| | | | llvm-svn: 61189
* This is valid in C++.Chris Lattner2008-12-182-4/+13
| | | | | | void foo() { return foo(); } llvm-svn: 61188
* Merge function-return.c into function.cChris Lattner2008-12-186-20/+20
| | | | | | | Fix PR2790 by making a warning an EXTWARN instead of EXTENSION. Add a new EXTENSION warning for "return (some void expression);" llvm-svn: 61187
* Give MachineLICM a name, for -time-passes etc.Dan Gohman2008-12-181-0/+2
| | | | llvm-svn: 61184
* Move post-RA scheduling before branch folding for now, because branchDan Gohman2008-12-181-7/+7
| | | | | | | folding's tail merging doesn't currently preserve liveness information which post-RA scheduling requires. llvm-svn: 61183
* Re-apply r61158 in a form that no longer breaks tests.Owen Anderson2008-12-181-36/+61
| | | | llvm-svn: 61182
* Revert previous patch, appears to break bootstrap.Dale Johannesen2008-12-181-88/+29
| | | | llvm-svn: 61181
* implement PR3177 - "__extension__ union" not supported in C++ modeChris Lattner2008-12-182-0/+19
| | | | llvm-svn: 61180
* Mark the x86 fp stack registers as "reserved". This tells LiveVariablesDan Gohman2008-12-181-0/+14
| | | | | | | | and the RegisterScavenger not to expect traditional liveness techniques are applicable to these registers, since we don't fully modify the effects of push and pop after stackification. llvm-svn: 61179
* Fix the time regression I introduced in 464.h264ref withDale Johannesen2008-12-181-29/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | my last patch to this file. The issue there was that all uses of an IV inside a loop are actually references to Base[IV*2], and there was one use outside that was the same but LSR didn't see the base or the scaling because it didn't recurse into uses outside the loop; thus, it used base+IV*scale mode inside the loop instead of pulling base out of the loop. This was extra bad because register pressure later forced both base and IV into memory. Doing that recursion, at least enough to figure out addressing modes, is a good idea in general; the change in AddUsersIfInteresting does this. However, there were side effects.... It is also possible for recursing outside the loop to introduce another IV where there was only 1 before (if the refs inside are not scaled and the ref outside is). I don't think this is a common case, but it's in the testsuite. It is right to be very aggressive about getting rid of such introduced IVs (CheckForIVReuse and the handling of nonzero RewriteFactor in StrengthReduceStridedIVUsers). In the testcase in question the new IV produced this way has both a nonconstant stride and a nonzero base, neither of which was handled before. (This patch does not handle all the cases where this can happen.) And when inserting new code that feeds into a PHI, it's right to put such code at the original location rather than in the PHI's immediate predecessor(s) when the original location is outside the loop (a case that couldn't happen before) (RewriteInstructionToUseNewBase); better to avoid making multiple copies of it in this case. Everything above is exercised in CodeGen/X86/lsr-negative-stride.ll (and ifcvt4 in ARM which is the same IR). llvm-svn: 61178
* reapply this hunk from Bill's reversion in r61169, it is conservativeChris Lattner2008-12-181-0/+5
| | | | | | and safe and orthogonal from turning off load pre. llvm-svn: 61177
* XFAIL on Linux.Bill Wendling2008-12-181-1/+1
| | | | llvm-svn: 61176
* make instnamer name unnamed blocks as well as instructions and args.Chris Lattner2008-12-181-1/+5
| | | | llvm-svn: 61175
* Do not XFAIL.Bill Wendling2008-12-181-1/+0
| | | | llvm-svn: 61174
* Updated checker build.Ted Kremenek2008-12-171-1/+1
| | | | llvm-svn: 61173
* Rewrite PTHLexer::DiscardToEndOfLine() to not use GetToken and instead only ↵Ted Kremenek2008-12-171-9/+18
| | | | | | read the bytes needed to determine if a token is not at the start of the line. llvm-svn: 61172
* fix leakage of var's initializersNuno Lopes2008-12-172-10/+27
| | | | llvm-svn: 61171
* Change PTHLexer::getSourceLocation() to not call GetToken() and instead just ↵Ted Kremenek2008-12-172-2/+17
| | | | | | read the file offset in the token data buffer directly. llvm-svn: 61170
* Temporarily revert r61027. It was causing a bootstrap failure in "release" modeBill Wendling2008-12-171-6/+1
| | | | | | | | | | | | | | | | | | | | | | | with everyone's favorite error messages: Comparing stages 2 and 3 warning: ./cc1-checksum.o differs warning: ./cc1plus-checksum.o differs Bootstrap comparison failure! ./c-decl.o differs ./cp/decl.o differs ./df-core.o differs ./gcc.o differs ./i386.o differs ./stor-layout.o differs ./tree-pretty-print.o differs ./tree.o differs make[2]: *** [compare] Error 1 make[1]: *** [stage3-bubble] Error 2 See PR3227. llvm-svn: 61169
* PTHLexer::isNextPPTokenLParen() no longer calls GetToken() and just reads ↵Ted Kremenek2008-12-171-2/+7
| | | | | | the token kind from the token data buffer. This results in a minor speedup and reduces the dependency on GetToken(). llvm-svn: 61168
* XFAIL for now.Devang Patel2008-12-171-0/+1
| | | | llvm-svn: 61167
* Xfail these tests for now.Devang Patel2008-12-174-0/+4
| | | | llvm-svn: 61166
* Delay semantic analysis of the C++ names casts when the subexpression is ↵Douglas Gregor2008-12-174-5/+27
| | | | | | type-dependent or the destination type is dependent. llvm-svn: 61165
* Today the front-ends (llvm-gcc and clang) generate multiple ↵Devang Patel2008-12-173-23/+74
| | | | | | | | llvm.dbg.compile_units to identify source file for various debug entities. Each llvm.dbg.compile_unit matches one file on the disk. However, the backend only supports one DW_TAG_compile_unit per .o file. The backend selects first compile_unit from the vector to construct DW_TAG_compile_unit entry, which is not correct in all cases. First step to resolve this is, record file name and directory directly in debug info for various debug entities. llvm-svn: 61164
OpenPOWER on IntegriCloud