Commit Graph

50002 Commits

Author SHA1 Message Date
Zhongxing Xu c967d03528 Improve comments.
llvm-svn: 59294
2008-11-14 09:23:38 +00:00
Lang Hames 9a91bd82c5 Test commit.
llvm-svn: 59293
2008-11-14 06:51:35 +00:00
Oscar Fuentes a5f835622d CMake: Disallow in-source builds except when building with the Visual
Studio IDE. CMake would overwrite the makefiles distributed with LLVM.

llvm-svn: 59292
2008-11-14 03:43:18 +00:00
Evan Cheng 889b79bb86 ARM / Mac OS X also wants to invalidate icache after jitting.
llvm-svn: 59291
2008-11-14 02:33:17 +00:00
Ted Kremenek 99d4ff3c7a Handle the case where 'element' in ObjCforCollectionstmt is not a DeclStmt or DeclRefExpr.
llvm-svn: 59290
2008-11-14 01:58:12 +00:00
Ted Kremenek 5cf87ff564 Fix CFG construction for ObjCForCollectionStmt: 'element' expression can be anything that evaluates to an lvalue
llvm-svn: 59289
2008-11-14 01:57:41 +00:00
Ted Kremenek 33d2dae0d4 Update Xcode project.
llvm-svn: 59285
2008-11-14 01:16:15 +00:00
Ted Kremenek a9d3e6c087 Rename header file.
Update include files.

llvm-svn: 59284
2008-11-14 01:14:18 +00:00
Ted Kremenek 63f4398e0b Rename ExprDeclBitVector to BlkExprDeclBitVector, and store mappings from Stmt* to bit indices instead using Expr*.
llvm-svn: 59283
2008-11-14 01:13:07 +00:00
Dan Gohman e827dacf57 Add a version of NewSUnit for creating units with MachineInstrs.
llvm-svn: 59282
2008-11-14 00:41:36 +00:00
Dan Gohman db8b95a4fa For post-regalloc scheduling, remove the instructions from the block
before re-inserting them.

llvm-svn: 59281
2008-11-14 00:33:17 +00:00
Dan Gohman 1a21ab6925 Check in the correct version of the patch in r59279.
llvm-svn: 59280
2008-11-14 00:32:34 +00:00
Dan Gohman 8f973f157d Debug printing for SUnits that carry MachineInstrs.
llvm-svn: 59279
2008-11-14 00:28:56 +00:00
Dan Gohman ee8273e52f Initial support for carrying MachineInstrs in SUnits.
llvm-svn: 59278
2008-11-14 00:06:09 +00:00
Dan Gohman a2cbbaa41f Change DOTGraphTraits<ScheduleDAG*>::getGraphName how to find the name of
the current function on its own, rather than relying on the SelectionDAG.

llvm-svn: 59277
2008-11-13 23:45:55 +00:00
Dan Gohman 059dc8d32a Clarify the comment about NumPreds and NumSuccs to reflect that they only
count non-control preds and succs.

llvm-svn: 59276
2008-11-13 23:41:41 +00:00
Evan Cheng fabdcce677 Handle the rest of pseudo instructions.
llvm-svn: 59275
2008-11-13 23:36:57 +00:00
Evan Cheng ea68423998 Lazy compilation callback save / restore VFP registers.
llvm-svn: 59274
2008-11-13 23:28:54 +00:00
Dan Gohman 072734ebd6 Remove the FlaggedNodes member from SUnit. Instead of requiring each SUnit
to carry a SmallVector of flagged nodes, just calculate the flagged nodes
dynamically when they are needed.

The local-liveness change is due to a trivial scheduling change where
the scheduler arbitrary decision differently.

llvm-svn: 59273
2008-11-13 23:24:17 +00:00
Daniel Dunbar 62efa23518 Fix some validation errors.
llvm-svn: 59272
2008-11-13 23:01:34 +00:00
Daniel Dunbar ed40bc19c9 Start a "hacking" page with some simple notes on getting started
developing clang.

llvm-svn: 59270
2008-11-13 22:49:41 +00:00
Dale Johannesen b47f6d3237 testcase for PR 1779.
llvm-svn: 59268
2008-11-13 22:17:10 +00:00
Owen Anderson d36b4c1bf8 Don't allow the restore point to be placed after terminators. With this change,
MultiSource/Applications is clean with the prealloc splitter.  Some failures
remain in SPEC.

llvm-svn: 59267
2008-11-13 21:53:14 +00:00
Dale Johannesen bee1ad9707 Extend InlineAsm::C_Register to allow multiple specific registers
(actually, code already all worked, only the comment
changed).  Use this to implement 'A' constraint on x86.
Fixes PR 1779.

llvm-svn: 59266
2008-11-13 21:52:36 +00:00
Evan Cheng bf9a055c98 Always emit a function pointer as a pointer to the function stub (if there is one). This makes it possible to compare function pointer values in lazy compilation mode. This fixes PR3043.
llvm-svn: 59265
2008-11-13 21:50:50 +00:00
Dan Gohman 1ddfcba5be Make the Node member of SUnit private, and add accessors.
llvm-svn: 59264
2008-11-13 21:36:12 +00:00
Dan Gohman 5a390b974c Change ScheduleDAG's DAG member from a reference to a pointer, to prepare
for the possibility of scheduling without a SelectionDAG being present.

llvm-svn: 59263
2008-11-13 21:21:28 +00:00
Steve Naroff 60d10c3d2a Add files to VC++ projects.
llvm-svn: 59262
2008-11-13 21:18:54 +00:00
Steve Naroff c9337928c1 Add file to VC++ project.
llvm-svn: 59261
2008-11-13 21:16:53 +00:00
Douglas Gregor 58e008d2a6 Some cleanup for the implementation of built-in operator
candidates. Thanks to Chris for the review!

llvm-svn: 59260
2008-11-13 20:12:29 +00:00
Steve Naroff f8cfd1647e Fix an obscure rewriter bug when rewriting implementations that don't have a corresponding interface (found while doing random testing on another bug).
llvm-svn: 59259
2008-11-13 20:07:04 +00:00
Evan Cheng 935963de81 Don't forget to emit stubs for function GV's emitted in CONSTPOOL_ENTRY's.
llvm-svn: 59258
2008-11-13 19:22:28 +00:00
Dan Gohman d92243a74c LLVM can generate native code for amd64 on "Linux".
llvm-svn: 59257
2008-11-13 19:07:07 +00:00
Chris Lattner 0046de17e5 Fix a couple of suboptimalities in error recovery.
1. In the top level of ParseStatementOrDeclaration, don't eat a } if we
   just parsed a statement if it list there.  Also, don't even bother
   emitting an error about a missing semicolon if the statement had a 
   bug (an rbrace is fine).
2. In do/while parsing, don't require a 'while' to be present if the do
   body didn't parse.

This allows us to generate a clean diagnostic for this code:

t.c:1:22: error: expected expression
void foo (void) { do . while (0); }
                     ^

Thanks to Neil for pointing this out.

llvm-svn: 59256
2008-11-13 18:52:53 +00:00
Chris Lattner f3e388d1bf don't highlight field name, just put a caret on it.
llvm-svn: 59255
2008-11-13 18:49:38 +00:00
Chris Lattner 7464fc784e disable these two tests, they crash and take a long time to run crashreporter etc.
llvm-svn: 59254
2008-11-13 18:45:47 +00:00
Chris Lattner 9226b92563 implement a fixme :), switch to -verify mode.
llvm-svn: 59253
2008-11-13 18:42:17 +00:00
Steve Naroff 832d89012f Fix <rdar://problem/6343942> clang ObjC rewriter: crash rewriting blocks
and <rdar://problem/6344601> clang ObjC rewriter: crash passing Block parameter?

llvm-svn: 59251
2008-11-13 17:40:07 +00:00
Ted Kremenek a0d2a1661a Using llvm::OwningPtr<> for CurLexer and CurTokenLexer. This makes both the ownership semantics of these objects explicit within the Preprocessor and also tightens up the code (explicit deletes not needed).
llvm-svn: 59249
2008-11-13 17:11:24 +00:00
Ted Kremenek 7c1e61d78b Use PushIncludeMacroStack/PopMacroStack instead of manually pushing/popping from IncludeMacroStack. This is both cleaner and makes the include stack transparently extensible.
llvm-svn: 59248
2008-11-13 16:51:03 +00:00
Ted Kremenek 9df654fa95 Update Xcode project.
llvm-svn: 59247
2008-11-13 16:36:43 +00:00
Dan Gohman 8fed4ce0b8 Use find_first/find_next to iterate through all the set bits in a
BitVector, instead of manually testing each bit.

llvm-svn: 59246
2008-11-13 16:31:27 +00:00
Ted Kremenek 7d5389e4b3 - Revert r59229 and r59232: AllocRegion should be immutable.
- Temporarily disabled test Analysis/array-struct.c for region store.

llvm-svn: 59245
2008-11-13 15:42:31 +00:00
Bill Wendling c35325c698 Fix to record comparator to make it work for return values > 1.
llvm-svn: 59242
2008-11-13 12:03:00 +00:00
Bill Wendling 3d2667c8f3 Put comma in correct place for call to StructType::get
llvm-svn: 59241
2008-11-13 10:18:35 +00:00
Zhongxing Xu d4e72fca45 Process array base expression of any type.
llvm-svn: 59240
2008-11-13 09:48:44 +00:00
Zhongxing Xu e9857ddcc0 Add test for unsigned array index.
llvm-svn: 59239
2008-11-13 09:20:05 +00:00
Zhongxing Xu 189a30796a Array index might be unsigned. We have to generate a temporary signed value for
it to be evaluated by APSInt::operators.

llvm-svn: 59238
2008-11-13 09:15:14 +00:00
Bill Wendling 9182147f17 Modify the intrinsics pattern to separate out the "return" types from the
"parameter" types. An intrinsic can now return a multiple return values like
this:

  def add_with_overflow : Intrinsic<[llvm_i32_ty, llvm_i1_ty],
                                    [LLVMMatchType<0>, LLVMMatchType<0>]>;

llvm-svn: 59237
2008-11-13 09:08:33 +00:00
Zhongxing Xu b9ec8f555f Add test for incomplete struct pointer.
llvm-svn: 59236
2008-11-13 08:44:52 +00:00