summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Since LCSSA switched over to DenseMap, we have to be more careful to avoid ↵Owen Anderson2008-05-301-4/+5
| | | | | | iterator invalidation. Fixes PR2385. llvm-svn: 51777
* Patches for building llvm on Solaris x86. Contributed by Nathan Keynes.Evan Cheng2008-05-3013-40/+45
| | | | llvm-svn: 51775
* Use llvm::cl::desc for description of the -Wimplicit-function-declaration ↵Ted Kremenek2008-05-301-2/+2
| | | | | | | | option. Patch by Holger Schurig! llvm-svn: 51774
* Fix some strict-aliasing warnings by using Stmt* instead of Expr* in ↵Ted Kremenek2008-05-303-16/+20
| | | | | | VariableArrayType, EnumConstantDecl, and VarDecl. llvm-svn: 51772
* Give a proper error message when a command line option is defined more thanMatthijs Kooijman2008-05-301-1/+1
| | | | | | | once (ie, at two different places in the source, not two times on the commandline). llvm-svn: 51771
* Use eraseFromParent() instead of doing that manually in two places.Matthijs Kooijman2008-05-301-2/+2
| | | | llvm-svn: 51770
* Fix constant vector init for initializer lists with an incomplete list Eli Friedman2008-05-302-6/+13
| | | | | | of elements. llvm-svn: 51769
* Fix crash with -serialize (reported to cfe-dev). The issue was Eli Friedman2008-05-301-0/+1
| | | | | | | | | essentially that we were destroying the declarations twice. (Note that we don't use -serialize directly in the testsuite, only SerializeTest.) llvm-svn: 51768
* Always check that the definition of a function has the correct type. Eli Friedman2008-05-302-1/+7
| | | | | | This fixes a crash on the included testcase (found in NetHack). llvm-svn: 51767
* Let Instruction::getOpcodeName() return something useful for the newMatthijs Kooijman2008-05-301-0/+2
| | | | | | insertvalue / extractvalue instructions. llvm-svn: 51766
* Emit parameter and local variable debug information with -g.Sanjiv Gupta2008-05-303-3/+78
| | | | llvm-svn: 51765
* Add FIXME to CodeGen struct layout.Eli Friedman2008-05-301-1/+5
| | | | llvm-svn: 51764
* Some additions to constant initializer generation code. Adds Eli Friedman2008-05-301-28/+132
| | | | | | | | | | | | | | bit-field initialization; ugly code, X86-only, but it works, at least for basic stuff. Separates/adds union initialization; currently disabled, though, because the struct/array code needs modifications to support elements of the wrong type. Fixes PR2381 and PR2309 with the bit-field initialization. And NetHack compiles and appears to work with a few tweaks (to work around the lack of transparent_union support, and clang being a bit strict about conflicting declarations). llvm-svn: 51763
* Cleanup/refactoring of Sema struct layout. This patch unifies the structEli Friedman2008-05-303-98/+131
| | | | | | | | | | and union codepaths and fixes some minor bugs. I'm reasonably confident this is accurate, at least for X86. I'll correct any bugs as I find them; I haven't found any for a while, though. llvm-svn: 51762
* Add the "AsCheapAsAMove" flag to some 64-bit xor instructions.Bill Wendling2008-05-301-2/+3
| | | | llvm-svn: 51761
* Add a --save-temps option.Mikhail Glushenkov2008-05-304-7/+25
| | | | llvm-svn: 51760
* Add a check for side effect-free options (specified only in the OptionList).Mikhail Glushenkov2008-05-302-2/+41
| | | | llvm-svn: 51759
* Documentation update.Mikhail Glushenkov2008-05-301-0/+27
| | | | llvm-svn: 51758
* Refactoring: remove code duplication introduced in the previous patch.Mikhail Glushenkov2008-05-301-86/+65
| | | | llvm-svn: 51757
* Refactoring: split CollectProperties into two separate function objects.Mikhail Glushenkov2008-05-301-137/+226
| | | | llvm-svn: 51756
* Show argv[0] in error messages (like gcc).Mikhail Glushenkov2008-05-301-4/+3
| | | | llvm-svn: 51755
* New feature: OptionList.Mikhail Glushenkov2008-05-303-17/+86
| | | | | | | | | | | | | | | | | | It can be handy to have all information about options gathered in a single place to provide an overview of all supported options. This patch allows the following: def Options : OptionList<[ (switch_option "E", (help "Help string")), (alias_option "quiet", "q") ... ]>; Tool-specific option properties (like 'append_cmd') have (obviously) no meaning in this context, so the only properties that are allowed are 'help' and 'required'. See usage example in examples/Clang.td. llvm-svn: 51754
* Documentation update.Mikhail Glushenkov2008-05-302-66/+120
| | | | llvm-svn: 51753
* A small optimization: use static char* array instead of StrVector.Mikhail Glushenkov2008-05-303-27/+37
| | | | llvm-svn: 51752
* Make it possible to test if the '-o' option is provided.Mikhail Glushenkov2008-05-302-5/+13
| | | | | | | | | | The following is now allowed: (case (not_empty "o"), do_something, ...) This didn't work previously because "-o" is built-in. llvm-svn: 51751
* Fix: 'sink' handling was broken.Mikhail Glushenkov2008-05-302-5/+17
| | | | llvm-svn: 51750
* Add support for option aliases.Mikhail Glushenkov2008-05-302-18/+70
| | | | llvm-svn: 51749
* Allow nesting of case expressions.Mikhail Glushenkov2008-05-301-17/+36
| | | | | | | | | | | The following is now legal: (case (in_language "c"), (case (switch_on "E"), "gcc -x c -E $INFILE", (default), "gcc -x c $INFILE"), (default), "gcc $INFILE $OUTFILE") llvm-svn: 51748
* Small error message improvement.Mikhail Glushenkov2008-05-301-0/+5
| | | | llvm-svn: 51747
* Remove RequireDefault parameter from EmitCaseConstructHandler.Mikhail Glushenkov2008-05-301-9/+3
| | | | | | There are now no situations when 'default' is required. llvm-svn: 51746
* Fix some headers.Mikhail Glushenkov2008-05-308-8/+8
| | | | llvm-svn: 51745
* New tests for the 'case' expression: not_empty, in_language.Mikhail Glushenkov2008-05-308-24/+44
| | | | llvm-svn: 51744
* -E should print to stdout.Mikhail Glushenkov2008-05-302-5/+6
| | | | llvm-svn: 51743
* Make it possible to have multiple input languages for a single tool.Mikhail Glushenkov2008-05-304-39/+91
| | | | llvm-svn: 51742
* Rename StringVector to StrVector (to be consistent with ↵Mikhail Glushenkov2008-05-302-7/+6
| | | | | | LLVMCConfigurationEmitter.cpp). llvm-svn: 51741
* Minor error message fixes.Mikhail Glushenkov2008-05-301-3/+4
| | | | llvm-svn: 51740
* Documentation and examples improvementsMikhail Glushenkov2008-05-305-9/+89
| | | | llvm-svn: 51739
* Better error reporting for the 'case' construct.Mikhail Glushenkov2008-05-301-4/+17
| | | | llvm-svn: 51738
* Do not generate empty 'if's for the output_suffix property.Mikhail Glushenkov2008-05-302-7/+15
| | | | llvm-svn: 51737
* Update documentation, add examples.Mikhail Glushenkov2008-05-305-77/+241
| | | | llvm-svn: 51736
* Rename LLVMC-Tutorial.rst to LLVMC-Reference.rstMikhail Glushenkov2008-05-301-0/+0
| | | | llvm-svn: 51735
* Make it possible to use hooks like this: '$CALL(MyHook)/path/to/file'.Mikhail Glushenkov2008-05-301-17/+36
| | | | llvm-svn: 51734
* Make it possible to change the output file suffix based on command-line options.Mikhail Glushenkov2008-05-302-8/+34
| | | | | | | | | | For instance, the following command: llvmc2 -E hello.c now generates a file with the correct suffix (hello.i). llvm-svn: 51733
* Add support for user-provided hooks and environment variable reads to the ↵Mikhail Glushenkov2008-05-302-16/+114
| | | | | | | | | | | | | | cmd_line tool property. Used like this: (cmd_line "$CALL(MyHook) --option -o $ENV(VARIABLE) $CALL(AnotherHook)") Also works with case expressions. Hook declarations are auto-generated, the definitions should be provided by the user (just drop a .cpp file in the tools/llvmc2 directory). Hooks should live in the "hooks" namespace and have type std::string hooks::Hook(void). llvm-svn: 51732
* Enable the response file ('llvmc @file') support.Mikhail Glushenkov2008-05-301-2/+2
| | | | llvm-svn: 51731
* Update the code to the fact that StringSet now lives in llvm/ADT.Mikhail Glushenkov2008-05-303-46/+7
| | | | llvm-svn: 51730
* Some small tweaks to make the generated code prettier.Mikhail Glushenkov2008-05-301-4/+14
| | | | llvm-svn: 51729
* Make it possible to use the generalised 'case' construct in the cmd_line ↵Mikhail Glushenkov2008-05-308-201/+286
| | | | | | property. llvm-svn: 51728
* Add a generalised 'case' construct.Mikhail Glushenkov2008-05-304-96/+139
| | | | | | Besides assigning edge weights, it will also be used by the cmd_line tool property. llvm-svn: 51727
* Unbreak this test.Nick Lewycky2008-05-301-1/+1
| | | | llvm-svn: 51726
OpenPOWER on IntegriCloud