summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix test to output LLVM to a temporary file, which we grep as part of the testDouglas Gregor2009-04-181-1/+1
| | | | llvm-svn: 69448
* Regenerate.Nick Lewycky2009-04-181-1/+1
| | | | llvm-svn: 69447
* Detect beagleboard as ARM. The $target is "armv7l".Nick Lewycky2009-04-181-1/+1
| | | | llvm-svn: 69446
* Make it clearer that llvm-gcc is not needed forDuncan Sands2009-04-181-1/+2
| | | | | | building llvm. llvm-svn: 69441
* Temporarily revert r69438 and r69439. These were causing failures during aBill Wendling2009-04-183-954/+3073
| | | | | | release build of llvm. llvm-svn: 69440
* Regenerate.Mikhail Glushenkov2009-04-181-3066/+944
| | | | llvm-svn: 69439
* Add a configure check for llvm-gcc.Mikhail Glushenkov2009-04-182-7/+10
| | | | llvm-svn: 69438
* rewrite the goto scope checking code to be more efficient, simpler,Chris Lattner2009-04-184-97/+251
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | produce better diagnostics, and be more correct in ObjC cases (fixing rdar://6803963). An example is that we now diagnose: int test1(int x) { goto L; int a[x]; int b[x]; L: return sizeof a; } with: scope-check.c:15:3: error: illegal goto into protected scope goto L; ^ scope-check.c:17:7: note: scope created by variable length array int b[x]; ^ scope-check.c:16:7: note: scope created by variable length array int a[x]; ^ instead of just saying "invalid jump". An ObjC example is: void test1() { goto L; @try { L: ; } @finally { } } t.m:6:3: error: illegal goto into protected scope goto L; ^ t.m:7:3: note: scope created by @try block @try { ^ There are a whole ton of fixme's for stuff to do, but I believe that this is a monotonic improvement over what we had. llvm-svn: 69437
* add accessor.Chris Lattner2009-04-181-0/+1
| | | | llvm-svn: 69436
* Use getAsPointerType instead of using getCanonicalType directly.Daniel Dunbar2009-04-182-10/+15
| | | | | | - <rdar://problem/6803995> llvm-svn: 69435
* Add a new LiveInterval::overlaps(). It checks if the live interval overlaps ↵Evan Cheng2009-04-182-0/+20
| | | | | | a range specified by [Start, End). llvm-svn: 69434
* Fix a bug found by inspection, class/meta references could be emittedDaniel Dunbar2009-04-181-17/+39
| | | | | | into the wrong section (they shared the same lookup table). llvm-svn: 69433
* add another testcaseChris Lattner2009-04-181-7/+19
| | | | llvm-svn: 69432
* don't evaluate ->child_end() every time through the loop, or *i frequently ↵Chris Lattner2009-04-181-27/+32
| | | | | | within it. llvm-svn: 69431
* split code out into a new CheckFunctionJumpScopes routine,Chris Lattner2009-04-181-32/+44
| | | | | | | add some comments, change type from void* -> Stmt*, use smallvector instead of vector. llvm-svn: 69430
* make scope checking be static functions instead of sema methods.Chris Lattner2009-04-182-36/+24
| | | | llvm-svn: 69429
* fix incorrect lowering of __builtin_ia32_shufpd, rdar://6803924Chris Lattner2009-04-182-2/+11
| | | | llvm-svn: 69428
* rename file.Chris Lattner2009-04-181-0/+0
| | | | llvm-svn: 69427
* don't dump .ll file in this dir.Chris Lattner2009-04-181-1/+1
| | | | llvm-svn: 69426
* __builtin_prefetch should be declared as "void __builtin_prefetch(const void ↵Chris Lattner2009-04-182-2/+7
| | | | | | | | *)", not "const void __builtin_prefetch(void *)". This fixes PR3912. llvm-svn: 69425
* rename testChris Lattner2009-04-181-0/+0
| | | | llvm-svn: 69424
* fix PR3927 by being more careful about the pp test for identifier.Chris Lattner2009-04-182-3/+12
| | | | llvm-svn: 69423
* second half of PR3940: #line requires simple digit sequence.Chris Lattner2009-04-183-1/+7
| | | | llvm-svn: 69422
* Store the type ID for __builtin_va_list in the PCH file, so that theDouglas Gregor2009-04-185-5/+41
| | | | | | | | AST context's __builtin_va_list type will be set when the PCH file is loaded. This fixes the crash when CodeGen'ing a va_arg expression pulled in from a PCH file. llvm-svn: 69421
* Fixed a few 64 bit cases in X86InstrInfo::commuteInstructionMon P Wang2009-04-181-3/+3
| | | | llvm-svn: 69417
* this is really just a recommendation, not a requirement.Chris Lattner2009-04-182-2/+2
| | | | llvm-svn: 69416
* enforce requirements imposed by C90 6.8 TC1, fixing PR3919.Chris Lattner2009-04-183-11/+41
| | | | llvm-svn: 69415
* Adjust XFAIL syntax, maybe that will help. The otherDale Johannesen2009-04-181-1/+2
| | | | | | way worked for me... llvm-svn: 69414
* Fix PR3938 by taking into account C99 6.10p4.Chris Lattner2009-04-182-1/+8
| | | | llvm-svn: 69413
* convert test to -verify style.Chris Lattner2009-04-181-3/+4
| | | | llvm-svn: 69412
* Substantially restructure function-like macro argument parsing.Chris Lattner2009-04-182-36/+83
| | | | | | | | | Highlights: PP::isNextPPTokenLParen() no longer eats the ( when present. We now simplify slightly the logic parsing macro arguments. We now handle PR3937 and other related cases correctly. llvm-svn: 69411
* Preliminary PCH support in the driverDouglas Gregor2009-04-184-17/+58
| | | | llvm-svn: 69410
* patch 69408 breaks this by removing the opportunityDale Johannesen2009-04-181-0/+1
| | | | | | | | | for the optimization it's testing to kick in (although it improves the code, getting rid of all spills). I don't understand the optimization well enough to rescue the test, so XFAILing. llvm-svn: 69409
* Inline asm's were still introducing bogus dependencies;Dale Johannesen2009-04-181-1/+7
| | | | | | my earlier patch to this code only fixed half of it. llvm-svn: 69408
* Lazy deserialization of function bodies for PCH files. For the CarbonDouglas Gregor2009-04-185-7/+98
| | | | | | | | | | "Hello, World!", this takes us from deserializing 6469 statements/expressions down to deserializing 1 statement/expression. It only translated into a 1% improvement on the Carbon-prefixed 403.gcc, but (a) it's the right thing to do, and (b) we expect this to matter more once we lazily deserialize identifiers. llvm-svn: 69407
* FunctionDecl::getBody() is getting an ASTContext argument for use inDouglas Gregor2009-04-1830-64/+107
| | | | | | | | lazy PCH deserialization. Propagate that argument wherever it needs to be. No functionality change, except that I've tightened up a few PCH tests in preparation. llvm-svn: 69406
* remove dead diagnostic.Chris Lattner2009-04-171-1/+0
| | | | llvm-svn: 69405
* Fix two problems from PR3916, and one problem I noticed while hackingChris Lattner2009-04-173-8/+24
| | | | | | on the code. llvm-svn: 69404
* implement PR3940: #line numbers not fully checkedChris Lattner2009-04-173-0/+9
| | | | llvm-svn: 69403
* remove trailing whitespaceJim Grosbach2009-04-171-50/+50
| | | | llvm-svn: 69402
* #line is allowed to have macros that expand to nothing after them.Chris Lattner2009-04-173-9/+24
| | | | llvm-svn: 69401
* Recommit r69335 and r69336. These were not causing problems.Bill Wendling2009-04-171-3/+5
| | | | llvm-svn: 69394
* Keep track of the number of statements/expressions written to and readDouglas Gregor2009-04-175-4/+36
| | | | | | | from a PCH file. It turns out that "Hello, World!" is bringing in 19% of all of the statements in Carbon.h, so we need to be lazy. llvm-svn: 69393
* fix a crash compiling code with its own definition of objc_assign_weak.Chris Lattner2009-04-172-5/+16
| | | | | | rdar://6800430 llvm-svn: 69392
* tweak redefinition of a typedef a bit to fix a couple of problems:Chris Lattner2009-04-174-23/+19
| | | | | | | | | | | | | | | | | | | | | | | 1. We had logic in sema to decide whether or not to emit the error based on manually checking whether in a system header file. 2. we were allowing redefinitions of typedefs in class scope in C++ if in header file. 3. there was no way to force typedef redefinitions to be accepted by the C compiler, which annoys me when stripping linemarkers out of .i files. The fix is to split the C++ class typedef redefinition path from the C path, and change the C path to be a warning that normally maps to error. This causes it to properly be ignored in system headers, etc. and gives us a way to control it. Passing -Wtypedef-redefinition now turns the error into a warning. One behavior change is that we now diagnose cases where you redefine a typedef in your .c file that was defined in a header file. This seems like reasonable behavior, and the diagnostic now indicates that it can be controlled with -Wtypedef-redefinition. llvm-svn: 69391
* Fix two embarrassing PCH bugs:Douglas Gregor2009-04-174-2/+26
| | | | | | | | | 1) Accidentally used delete [] on an array of statements that was allocated with ASTContext's allocator 2) Deserialization of names with multiple declarations (e.g., a struct and a function) used the wrong mangling constant, causing it to view declaration IDs as Decl*s. 403.gcc builds and links properly. llvm-svn: 69390
* Use PresumedLoc to record line number in debug info entries.Devang Patel2009-04-171-11/+22
| | | | llvm-svn: 69389
* Don't put msgrefs in used globals (in particular, we don't wantDaniel Dunbar2009-04-171-1/+0
| | | | | | no-dead-strip set on them). llvm-svn: 69388
* Appropriately set file name and directory name in debug info compile units.Devang Patel2009-04-172-27/+31
| | | | llvm-svn: 69387
* implement a new clang-cc option -dump-build-information=filename which ↵Chris Lattner2009-04-171-2/+90
| | | | | | | | | | | | | | causes the compiler to dump random stuff from the build into the file. Right now this amounts to dumping command line arguments and diagnostics to the file. The idea is that you can set an envvar, do a world build of an OS, then grep through all the logs for interesting things or something. Daniel, please wire the driver up to do something with this. llvm-svn: 69386
OpenPOWER on IntegriCloud