aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2009-03-18Driver: Fix Compilation::getArgsForToolChain, local variable wasDaniel Dunbar
shadowing member. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67167 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Add two normalizations for powerpc.Daniel Dunbar
- PR3830 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67166 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18fix PR3809, codegen for inc/dec of function pointers.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67165 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18teach codegen to handle noop casts as lvalues.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67164 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Fix -E mismatch; an identifier followed by a numeric constant does notDaniel Dunbar
require a space (to avoid concatenation) if the numeric constant had a leading period. - PR3819. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67163 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Ditch Driver::DefaultToolChain, this can vary between compilations.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67162 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: I was too hasty in free'ing Actions, we sometimes shareDaniel Dunbar
Actions so a simple tree traversal isn't quite good enough. Leaving a FIXME for now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67161 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Initialize Arg::ClaimedDaniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67160 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Move actions into Compilation, and construct the compilationDaniel Dunbar
earlier. - This gives us a simple ownership model, and allows clients access to more information should they ever want it. - We now free Actions correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67158 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Add test for binding of precompile; exposed bug due to myDaniel Dunbar
flawed idea that llvm::sys::Path::getBasename was a version of basename(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67153 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Use a work list to recursively build up the subregion mapping, and mark liveZhongxing Xu
var region roots. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67152 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Implement JoinedAndSeparateArg::getValue and add parsing testDaniel Dunbar
case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67151 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: UnknownHostInfo was always returning 0.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67150 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Use PrettyStackTrace.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67149 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18cleanup instantiation code, tighten testcaseGabor Greif
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67148 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Release Host, ToolChain, and Tool implementations.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67146 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18instantiate ?: expressionsGabor Greif
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67145 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18The scope representation can now be either a DeclContext pointer or aDouglas Gregor
Type pointer. This allows our nested-name-specifiers to retain more information about the actual spelling (e.g., which typedef did the user name, or what exact template arguments were used in the template-id?). It will also allow us to have dependent nested-name-specifiers that don't map to any DeclContext. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67140 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Add test case for -ccc-clang-archs (which, it turns out, wasDaniel Dunbar
inverted). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67135 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17pull a nested conditional + comment out into its own variable,Chris Lattner
no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67128 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17don't crash when sentinel attribute is used on function without a prototype,Chris Lattner
discovered as part of PR3817 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67127 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Fix Type::getDesugaredType() to remove all direct sugar onChris Lattner
a type. For example, if we have a typedef of a typeof of int, we strip all the say down to int. This allows us to simplify the getAs* methods, and is the first step towards fixing PR3817 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67126 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Add -ccc-print-bindings option (for testing); the PythonDaniel Dunbar
driver has no corresponding option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67125 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Add name to Tool (for testing/debugging) and move GCC_* toolsDaniel Dunbar
into gcc:: namespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67120 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Stub out some code for support for NSDeallocateObject. This is enabled yet untilTed Kremenek
we resolve the semantics of this function when GC is enabled. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67116 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17GCC 4.0 isn't happy with VISIBILITY_HIDDEN on a namespace.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67112 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: GCC 4.0 isn't happy with VISIBILITY_HIDDEN on a namespace.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67110 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Stub out generic GCC tool selection (missed a file)Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67109 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Stub out generic GCC tool selection.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67108 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Stub out generic GCC tool chain implementation.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67107 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Make sure to get the default arch name from the tool chain, not the Daniel Dunbar
host; the toolchain may differ based on command line arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67106 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Pass HostInfo reference into ToolChain.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67105 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Refactor instantiation of declarations within a template into a muchDouglas Gregor
cleaner visitor framework. Added a visitor for declarations, which is quite similar to the visitor for statatements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67104 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Pass Driver reference down into Host info, which will need itDaniel Dunbar
to pass to ToolChains, which may need Driver specific information (for example, to form search paths). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67102 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Fix typo ArgList destructor.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67101 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17retain/release checker: Add support for reasoning about -dealloc.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67094 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Implement instantiation of enums within class templates. This isn'tDouglas Gregor
quite as great as it sounds, because, while we can refer to the enumerator values outside the template, e.g., adder<long, 3, 4>::value we can't yet refer to them with dependent names, so no Fibonacci (yet). InstantiateClassTemplateSpecialization is getting messy; next commit will put it into a less-ugly state. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67092 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Hide HostInfo implementations.Daniel Dunbar
- Also, normalize arch names a tad and stub out getToolChain implementations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67091 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Add two option form of ArgList::getLastArg.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67090 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Add logic for computing where to put job outputs (pipe,Daniel Dunbar
temporary file, user provided name, derived name). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67088 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Add ArgList::MakeArgString and make ArgList::Make* const.Daniel Dunbar
- Slightly strange, but the idea is that the ArgList data structure is primarily a list of arguments; we want to allow clients to still add argument strings to an ArgList to avoid worrying about string lifetimes (or unnecessary string copying). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67086 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17typoGabor Greif
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67081 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Initialize the cleanup.dst variable if necessary. Fixes PR3789.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67075 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Fix unused variable warning in -Asserts mode.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67073 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Handle ImplicitCastExprs when instantiating templates.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67063 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-16Fix struct field's debug info.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67062 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-16Fix a problem noticed by Anders, where we were creatingDouglas Gregor
IntegerLiterals during instantiation when we should be creating either a boolean literal (CXXBoolLiteralExpr) or a character literal (CharacterLiteral). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67061 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-16Almost complete implementation of rvalue references. One bug, and a few ↵Sebastian Redl
unclear areas. Maybe Doug can shed some light on some of the fixmes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67059 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-16Build system changes to use TableGen to generate the variousDouglas Gregor
diagnostics. This builds on the patch that Sebastian committed and then revert. Major differences are: - We don't remove or use the current ".def" files. Instead, for now, we just make sure that we're building the ".inc" files. - Fixed CMake makefiles to run TableGen and build the ".inc" files when needed. Tested with both the Xcode and Makefile generators provided by CMake, so it should be solid. - Fixed normal makefiles to handle out-of-source builds that involve the ".inc" files. I'll send a separate patch to the list with Sebastian's changes that eliminate the use of the .def files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67058 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-16Check signedness of bitfield sizes.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67045 91177308-0d34-0410-b5e6-96231b3b80d8