summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix constructor initialization order. Patch by Bill Lynch.Benjamin Kramer2010-07-165-17/+18
| | | | llvm-svn: 108524
* Feed the right output into FileCheck.Benjamin Kramer2010-07-161-2/+2
| | | | llvm-svn: 108523
* eliminate CallInst::ArgOffsetGabor Greif2010-07-168-44/+37
| | | | llvm-svn: 108522
* Treat template parameters as part of the declaration-specifiers for theJohn McCall2010-07-165-12/+69
| | | | | | | | purpose of access control. Fixes PR7644. I can't actually find anything directly justifying this, but it seems obvious. llvm-svn: 108521
* Get rid of a bunch of duplicated ELF enum values.Eli Friedman2010-07-165-131/+41
| | | | llvm-svn: 108520
* A few more minor additions to ELF.h.Eli Friedman2010-07-161-0/+9
| | | | llvm-svn: 108519
* Remove bogus link.Eric Christopher2010-07-161-1/+0
| | | | llvm-svn: 108518
* Arrays and vectors with different numbers of elements are not equivalent.Nick Lewycky2010-07-162-4/+28
| | | | llvm-svn: 108517
* Remove unnecessary conditional.Eric Christopher2010-07-161-2/+0
| | | | llvm-svn: 108516
* LoopSimplify does not update domfrontier correctly.Tobias Grosser2010-07-162-2/+22
| | | | | | This fixes PR7649. llvm-svn: 108513
* Add dump() to DominanceFrontierTobias Grosser2010-07-162-0/+8
| | | | llvm-svn: 108512
* Make this grossness default to the error it should always be.Chandler Carruth2010-07-162-2/+2
| | | | llvm-svn: 108511
* Sema: Fix a bug with #pragma options align=reset, reset against an empty stackDaniel Dunbar2010-07-162-14/+30
| | | | | | is well defined, it resets to the default alignment. llvm-svn: 108508
* Remove many calls to TII::isMoveInstr. Targets should be producing COPY anyway.Jakob Stoklund Olesen2010-07-1615-228/+74
| | | | | | TII::isMoveInstr is going tobe completely removed. llvm-svn: 108507
* Add forgotten test case.Jakob Stoklund Olesen2010-07-161-0/+28
| | | | llvm-svn: 108506
* Butcher a perfectly reasonable diagnostic to pacify old versions of SWIG.Chandler Carruth2010-07-164-8/+10
| | | | llvm-svn: 108505
* Add initial test cases for scanf format string checking.Ted Kremenek2010-07-161-0/+14
| | | | llvm-svn: 108503
* Add the main scanf-parsing logic that I meant to include in my previous commit.Ted Kremenek2010-07-161-0/+214
| | | | llvm-svn: 108502
* Add missing header file.Ted Kremenek2010-07-161-0/+71
| | | | llvm-svn: 108501
* Add most of the boilerplate support for scanf format string checking. This ↵Ted Kremenek2010-07-168-1059/+1360
| | | | | | | | | | | | | includes handling the parsing of scanf format strings and hooking the checking into Sema. Most of this checking logic piggybacks on what was already there for checking printf format strings, but the checking logic has been refactored to support both. What is left to be done is to support argument type checking in format strings and of course fix the usual tail of bugs that will follow. llvm-svn: 108500
* Add builtin definition for scanf, including extending the builtin encoding toTed Kremenek2010-07-164-0/+37
| | | | | | | | | | represent builtins that have the "scanf" attribution (via the format attribute) just like we do with printf functions. Follow-up work is needed to add similar support for fscanf et al. This is to support format-string checking for scanf functions. llvm-svn: 108499
* Use the source-order scheduler instead of the "fast" scheduler at -O0,Dan Gohman2010-07-163-4/+4
| | | | | | | because it's more likely to keep debug line information in its original order. llvm-svn: 108496
* build/Darwin: Add an LLVM_LTO_VERSION_OFFSET make variable to allow offsettingDaniel Dunbar2010-07-161-1/+9
| | | | | | the libLTO library version from the actual build version. llvm-svn: 108495
* Also revert 108422, it's causing some test failures.Eric Christopher2010-07-162-34/+0
| | | | | | Working on testcases for Owen. llvm-svn: 108494
* build/Clang: Build and install libLTO as part of clang-only/install-clang ↵Daniel Dunbar2010-07-161-2/+4
| | | | | | targets. llvm-svn: 108493
* Fix this test.Dan Gohman2010-07-161-1/+1
| | | | llvm-svn: 108491
* Fix for PR3800: make sure not to evaluate the expression for a read-writeEli Friedman2010-07-163-16/+51
| | | | | | asm operand twice. llvm-svn: 108489
* Builtins/ARM: __clear_cache doesn't seem to have a consistent prototype, declareDaniel Dunbar2010-07-163-2/+13
| | | | | | | the builtin as void __clear_cache(...) to workaround this, which appears to match what GCC does. llvm-svn: 108487
* Wrote the code that looks at a context to seeSean Callanan2010-07-164-28/+228
| | | | | | | if the variables in that context allow a particular JIT compiled expression to run in that context. llvm-svn: 108485
* The SelectionDAGBuilder's handling of debug info, on rareDale Johannesen2010-07-163-12/+207
| | | | | | | | | | occasions, caused code to be generated in a different order. All cases I've seen involved float softening in the type legalizer, and this could be perhaps be fixed there, but it's better not to generate things differently in the first place. 7797940 (6/29/2010..7/15/2010). llvm-svn: 108484
* Oops, didn't define AreTypesSame correctly.Sean Callanan2010-07-161-2/+2
| | | | llvm-svn: 108483
* IRgen: Support user defined attributes on block runtime functions.Daniel Dunbar2010-07-164-0/+85
| | | | | | | | | | | | | | | | | | - This issue here is that /usr/include/Blocks.h wants to define some of the block runtime globals as weak, depending on the target. This doesn't work in Clang because we aren't using the AST decl for these globals. - The fix is a pretty gross hack which just watches all the decls for the specific blocks globals we need to know about; if we see one we use it, otherwise we use the hand coded type. In time, I would like to clean this up by changing IRgen to ask Sema/AST for the decl, which would then be lazily loaded from the builtin table if necessary. This could be used in a whole host of places in IRgen and would get rid of a lot of grotty hand coding of LLVM IR; however, we need some extra Sema support for this as well as support for builtin global variables. llvm-svn: 108482
* IRgen: Move blocks runtime interfaces to CodeGenModule.Daniel Dunbar2010-07-164-67/+80
| | | | llvm-svn: 108481
* Suppress !+Asserts warning.Daniel Dunbar2010-07-161-0/+1
| | | | llvm-svn: 108480
* Revert. This isn't the correct way to go.Bill Wendling2010-07-154-27/+4
| | | | llvm-svn: 108478
* When deferring the emission of declarations with initializers in C++, rememberJohn McCall2010-07-155-7/+61
| | | | | | | the order they appeared in the translation unit. If they get emitted, put them in their proper order. Fixes rdar://problem/7458115 llvm-svn: 108477
* Fix the order that SCEVExpander considers add operands in so thatDan Gohman2010-07-152-2/+54
| | | | | | | it doesn't miss an opportunity to form a GEP, regardless of the relative loop depths of the operands. This fixes rdar://8197217. llvm-svn: 108475
* Handle code gen for the unreachable instruction if it's the only instruction inBill Wendling2010-07-154-4/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the function. We'll just turn it into a "trap" instruction instead. The problem with not handling this is that it might generate a prologue without the equivalent epilogue to go with it: $ cat t.ll define void @foo() { entry: unreachable } $ llc -o - t.ll -relocation-model=pic -disable-fp-elim -unwind-tables .section __TEXT,__text,regular,pure_instructions .globl _foo .align 4, 0x90 _foo: ## @foo Leh_func_begin0: ## BB#0: ## %entry pushq %rbp Ltmp0: movq %rsp, %rbp Ltmp1: Leh_func_end0: ... The unwind tables then have bad data in them causing all sorts of problems. Fixes <rdar://problem/8096481>. llvm-svn: 108473
* Set "optimization is ON" and supply other optional parameters. This helps ↵Devang Patel2010-07-151-2/+6
| | | | | | codegenerator preserve info in case the symbol is deleted. llvm-svn: 108471
* Improve test case. Thanks EliDouglas Gregor2010-07-151-0/+1
| | | | llvm-svn: 108470
* Don't suppress the emission of available_externally functions markedDouglas Gregor2010-07-152-1/+16
| | | | | | with always_inline attribute. Thanks to Howard for the tip. llvm-svn: 108469
* Mark implementation generated methods as artificial.Devang Patel2010-07-151-1/+2
| | | | | | Tested by namespace.exp and virtfunc.exp from gdb testsuite. llvm-svn: 108468
* Added a function to test whether two types areSean Callanan2010-07-152-0/+21
| | | | | | the same. llvm-svn: 108467
* Split -enable-finite-only-fp-math to two options:Evan Cheng2010-07-1511-38/+39
| | | | | | -enable-no-nans-fp-math and -enable-no-infs-fp-math. All of the current codegen fp math optimizations only care whether the fp arithmetics arguments and results can never be NaN. llvm-svn: 108465
* After some discussion, the ABI list settled on a much more sensible manglingJohn McCall2010-07-151-6/+3
| | | | | | for string literals. llvm-svn: 108464
* build/Darwin: Add a missing directory dependency.Daniel Dunbar2010-07-151-1/+1
| | | | llvm-svn: 108463
* remove some unneeded overloads that were causing Chris Lattner2010-07-151-20/+0
| | | | | | ambiguity problems on some systems. llvm-svn: 108462
* fix the definitions of ConstTextCoalSection/ConstDataCoalSectionChris Lattner2010-07-152-4/+5
| | | | | | | | | | | to keep "Text" in sync with the "pure instructions" section attribute. Lack of this attribute was preventing the assembler from emitting multibyte noops instructions for templates (and inlines, and other coalesced stuff) and was causing the assembler to mismatch .o files. This fixes rdar://8018335 llvm-svn: 108461
* fix indentation and 80 colsChris Lattner2010-07-151-2/+3
| | | | llvm-svn: 108460
* When we're performing tentative parsing to determine whether theDouglas Gregor2010-07-153-15/+34
| | | | | | | | | | | | | | | | parser is looking at a declaration or an expression, use a '=' to conclude that we are parsing a declaration. This is wrong. However, our previous approach of finding a comma after the '=' is also wrong, because the ',' could be part of a template-argument-list. So, for now we're going to use the same wrong heuristic as GCC and Visual C++, because less real-world code is likely to be broken this way. I've opened PR7655 to keep track of our wrongness; note also the XFAIL'd test. Fixes <rdar://problem/8193163>. llvm-svn: 108459
OpenPOWER on IntegriCloud