summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Remove -f__block as codegen for __block variables should be solid.Mike Stump2009-03-253-55/+1
| | | | llvm-svn: 67697
* Fixup codegen for block literals that bleed copy/dispose informationMike Stump2009-03-253-6/+13
| | | | | | from previous block literals. llvm-svn: 67696
* Update to account for the great driver renaming.Mike Stump2009-03-251-1/+1
| | | | llvm-svn: 67695
* One more test.Evan Cheng2009-03-251-1/+6
| | | | llvm-svn: 67694
* When optimizing with debug info, don't keep theDale Johannesen2009-03-251-4/+5
| | | | | | | | stoppoint nodes around until Legalize; doing this imposed an ordering on a sequence of loads that came from different lines, interfering with scheduling. llvm-svn: 67692
* Add __builtin___memcpy_chk tests.Evan Cheng2009-03-251-0/+23
| | | | llvm-svn: 67691
* These tests pass on linux.Duncan Sands2009-03-253-3/+3
| | | | llvm-svn: 67689
* Add a __builtin_object_size test.Evan Cheng2009-03-251-0/+16
| | | | llvm-svn: 67688
* Predicate to detect when a RecordDecl is really the injected-class-nameDouglas Gregor2009-03-253-0/+22
| | | | llvm-svn: 67687
* Stub out some declaration kinds that cannot ever be instantiatedDouglas Gregor2009-03-251-0/+14
| | | | llvm-svn: 67686
* Fix parsing of template classes prefixed by nested-name-specifiersDouglas Gregor2009-03-252-2/+22
| | | | llvm-svn: 67685
* Minor refactoring to eliminate an extra switch during template instantiationDouglas Gregor2009-03-251-3/+9
| | | | llvm-svn: 67684
* Driver: Implement Darwin_X86 tool chain level argument translation.Daniel Dunbar2009-03-252-5/+109
| | | | | | | | | | | | | | | | | | | | - This is really gross, but its the easiest way to match gcc. Once we are confident in the driver, we can try and push these translations down into tools. - No test cases for this yet, it's hard to see the effects of these translations before the gcc tool argument translation is pulled over. - Interaction with "unused argument" warning hasn't been worked out yet. - <rdar://problem/6717359> [driver] implement toolchain specific argument translation. "It's horrible in here." llvm-svn: 67683
* Fix a bug in our autoupgrade support: in an argument list to a functionChris Lattner2009-03-252-4/+19
| | | | | | | | | | | | call, we should treat "i64 zext" as the start of a constant expr, but "i64 0 zext" as an argument with an obsolete attribute on it (this form is already tested by test/Assembler/2007-07-30-AutoUpgradeZextSext.ll). Make the autoupgrade logic more discerning to avoid treating "i64 zext" as an old-style attribute, causing us to reject a valid constant expr. This fixes PR3876. llvm-svn: 67682
* do not rely on callee being operand 0Gabor Greif2009-03-251-1/+1
| | | | llvm-svn: 67681
* Driver: Handle -Xarch_, including warning for nasty -Xarch_ use casesDaniel Dunbar2009-03-253-2/+53
| | | | | | | we aren't going to support. For example: clang -Xarch_i386 -S -Xarch_i386 -o -Xarch_i386 myi386asm.s ... llvm-svn: 67680
* Driver: Replace Option::ForwardToGCC by Option::DriverOption (whichDaniel Dunbar2009-03-253-11/+8
| | | | | | matches the flag in Options.def). llvm-svn: 67679
* This patch adds two more SymbolData subclasses: SymIntExpr and SymSymExpr, forZhongxing Xu2009-03-257-28/+152
| | | | | | | | representing symbolic expressions like 'x'+3 and 'x'+'y'. The design is subjected to change later when we fix the class hierarchy of symbolic expressions. llvm-svn: 67678
* Driver: Fix typo in JoinedAndSeparateArg::render.Daniel Dunbar2009-03-251-1/+1
| | | | llvm-svn: 67677
* Driver: Prep for tool chain specific argument translation.Daniel Dunbar2009-03-2513-170/+265
| | | | | | | | | | | | | | | | - Lift ArgList to a base class for InputArgList and DerivedArgList. - This is not a great decomposition, but it does embed the translation into the type system, and keep things efficient for tool chains that don't want to do any translation. - No intended functionality change. Eventually I hope to get rid of tool chain specific translation and have each tool do the right thing, but for now this is the easiest way to match gcc precisely (which is good for testing). llvm-svn: 67676
* Do not ignore DW_TAG_class_type!Devang Patel2009-03-251-0/+1
| | | | llvm-svn: 67675
* simplify some conditionals, don't copy LangOptions.Chris Lattner2009-03-251-11/+15
| | | | llvm-svn: 67674
* gcc 4.3 finds my use of ^ suspicious.Daniel Dunbar2009-03-251-1/+1
| | | | llvm-svn: 67673
* Improve handling of base initializers. We now parse initializers in out of ↵Anders Carlsson2009-03-256-2/+33
| | | | | | | | | | | | | | | | | | | | | | line decls, such as: class C { C() { } int a; }; C::C() : a(10) { } We also diagnose when initializers are used on declarations that aren't constructors: t.cpp:1:10: error: only constructors take base initializers void f() : a(10) { } ^ Doug and/or Sebastian: I'd appreciate a review, especially the nested-name-spec test results (from the looks of it we now match gcc in that test.) llvm-svn: 67672
* Add the .td files and remove the .def files from the Xcode project.Anders Carlsson2009-03-251-12/+16
| | | | llvm-svn: 67671
* CodeGen still defaults to non-verbose asm, but llc now overrides it and ↵Evan Cheng2009-03-251-0/+3
| | | | | | default to verbose. llvm-svn: 67669
* CodeGen still defaults to non-verbose asm, but llc now overrides it and ↵Evan Cheng2009-03-2555-134/+166
| | | | | | default to verbose. llvm-svn: 67668
* Don't print global names twice with -asm-verbose.Evan Cheng2009-03-252-3/+3
| | | | llvm-svn: 67667
* Revert r67655 and r67656, as they are breaking the build. I'mDan Gohman2009-03-253-1392/+1010
| | | | | | not going to persue this further at this time. llvm-svn: 67666
* Turn on -analyzer-eagerly-assume by default when using 'clang-cc' to performTed Kremenek2009-03-251-0/+1
| | | | | | static analysis. llvm-svn: 67665
* Template instantiation for conversion functionsDouglas Gregor2009-03-252-0/+42
| | | | llvm-svn: 67664
* Turn on '-analyzer-eagerly-assume' by default in ccc for the static analyzer.Ted Kremenek2009-03-251-1/+1
| | | | llvm-svn: 67663
* Fix PR3874 by restoring a condition I removed, but making it moreChris Lattner2009-03-252-1/+11
| | | | | | precise than it used to be. llvm-svn: 67662
* Do not ignore DW_TAG_class_type!Devang Patel2009-03-251-0/+1
| | | | llvm-svn: 67661
* Move template instantiation for expressions into a separate fileDouglas Gregor2009-03-253-401/+417
| | | | llvm-svn: 67660
* In Parser::ParseClassSpecifier, don't conflate a NULL declaration withDouglas Gregor2009-03-254-36/+35
| | | | | | | | failure to perform a declaration. Instead, explicitly note semantic failures that occur during template parsing with a DeclResult. Fixes PR3872. llvm-svn: 67659
* LLVM's master Makefile.common is in LLVM_SRC_ROOT, not LLVM_OBJ_ROOT.Dan Gohman2009-03-251-1/+1
| | | | llvm-svn: 67658
* oops, I intended to remove this, not comment it out. Thanks Duncan!Chris Lattner2009-03-241-2/+1
| | | | llvm-svn: 67657
* Regenerate configure.Dan Gohman2009-03-241-1004/+1386
| | | | llvm-svn: 67656
* Fix paths; AutoRegen.sh changes its current working directory to be theDan Gohman2009-03-242-6/+6
| | | | | | | autoconf directory, but these paths need to be relative to the main source directory. llvm-svn: 67655
* Update for autoconf 2.6x;Dan Gohman2009-03-241-3/+3
| | | | llvm-svn: 67654
* Parse deleted function definitions and hook them up to Doug's machinery.Sebastian Redl2009-03-247-10/+74
| | | | llvm-svn: 67653
* Converted a1.ll to unittests.Misha Brukman2009-03-246-49/+197
| | | | llvm-svn: 67652
* Mention explicitly that the Ada front-end will not bootstrap.Duncan Sands2009-03-241-0/+5
| | | | | | | The configure line had --disable-bootstrap, but it was not clear that this is essential. llvm-svn: 67651
* Encode language.Devang Patel2009-03-241-4/+15
| | | | llvm-svn: 67650
* Fix PR3845: Avoid stale MachineInstruction pointer reference.Evan Cheng2009-03-241-3/+1
| | | | llvm-svn: 67649
* Type::isObjectType now implements the (more sensible) C++ definitionDouglas Gregor2009-03-245-11/+14
| | | | | | | | | | | | | | | | | | of "object type" rather than the C definition of "object type". The difference is that C's "object type" excludes incomplete types such as struct X; However, C's definition also makes it far too easy to use isObjectType as a means to detect incomplete types when in fact we should use other means (e.g., Sema::RequireCompleteType) that cope with C++ semantics, including template instantiation. I've already audited every use of isObjectType and isIncompleteType to ensure that they are doing the right thing for both C and C++, so this is patch does not change any functionality. llvm-svn: 67648
* Fix bash-isms.Dan Gohman2009-03-241-2/+2
| | | | llvm-svn: 67647
* Set the svn:mime-type to text/x-sh, so that diffs work.Dan Gohman2009-03-240-0/+0
| | | | llvm-svn: 67646
* Driver: Handle -flto, -O4, and tweak -emit-llvm to match llvm-gcc.Daniel Dunbar2009-03-245-8/+46
| | | | | | | | | | | | - -emit-llvm no longer changes what compilation steps are done. - -emit-llvm and -emit-llvm -S write output files with .o and .s suffixes, respectively. - <rdar://problem/6714125> clang-driver should support -O4 and -flto, like llvm-gcc llvm-svn: 67645
OpenPOWER on IntegriCloud