]>
granicus.if.org Git - clang/log
Daniel Dunbar [Wed, 18 Mar 2009 07:06:02 +0000 (07:06 +0000)]
Driver: ConstructJob also needs to know the destination (where to put
its commands).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67179
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 06:51:03 +0000 (06:51 +0000)]
Driver: Print version on stderr to match [gc]cc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67178
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 06:49:39 +0000 (06:49 +0000)]
Driver: Implement -### (hard to tell, since we don't actually
construct any jobs).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67177
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 06:48:39 +0000 (06:48 +0000)]
Driver: Add forwarding methods to underlying list for PipedJob and
JobList.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67176
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 06:21:12 +0000 (06:21 +0000)]
Driver: Claim inputs when we bind the InputAction.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67174
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 06:20:32 +0000 (06:20 +0000)]
Driver: Make Arg::Claimed mutable.
- This is unfortunate but necessary to retain any utility for const.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67173
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 06:13:37 +0000 (06:13 +0000)]
Driver: Rename Command::Argv to Command::Arguments to make it clearer
that this does not include the implicit first argument (the executable
name).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67172
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 06:09:38 +0000 (06:09 +0000)]
Driver: Don't claim inputs when pipelining, a tool should eventually
claim these.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67171
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 06:07:59 +0000 (06:07 +0000)]
Driver: Add a dash of const.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67170
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 06:00:36 +0000 (06:00 +0000)]
Driver: Stub out Tool::ConstructJob.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67169
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 05:59:14 +0000 (05:59 +0000)]
Add 'make cscope.files' top level target.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67168
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 05:58:45 +0000 (05:58 +0000)]
Driver: Fix Compilation::getArgsForToolChain, local variable was
shadowing member.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67167
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 04:41:46 +0000 (04:41 +0000)]
Driver: Add two normalizations for powerpc.
- PR3830
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67166
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 18 Mar 2009 04:25:13 +0000 (04:25 +0000)]
fix PR3809, codegen for inc/dec of function pointers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67165
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 18 Mar 2009 04:02:57 +0000 (04:02 +0000)]
teach codegen to handle noop casts as lvalues.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67164
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 03:32:24 +0000 (03:32 +0000)]
Fix -E mismatch; an identifier followed by a numeric constant does not
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
Daniel Dunbar [Wed, 18 Mar 2009 03:13:20 +0000 (03:13 +0000)]
Driver: Ditch Driver::DefaultToolChain, this can vary between compilations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67162
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 03:02:22 +0000 (03:02 +0000)]
Driver: I was too hasty in free'ing Actions, we sometimes share
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
Daniel Dunbar [Wed, 18 Mar 2009 02:57:50 +0000 (02:57 +0000)]
Driver: Initialize Arg::Claimed
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67160
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 02:56:39 +0000 (02:56 +0000)]
Driver: Err, didn't mean to commit this part yet.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67159
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 02:55:38 +0000 (02:55 +0000)]
Driver: Move actions into Compilation, and construct the compilation
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
Daniel Dunbar [Wed, 18 Mar 2009 02:11:26 +0000 (02:11 +0000)]
Driver: Use custom diag printer to drop dependency on libFrontend and
libLex.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67155
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Wed, 18 Mar 2009 02:07:30 +0000 (02:07 +0000)]
add test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67154
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 02:00:31 +0000 (02:00 +0000)]
Driver: Add test for binding of precompile; exposed bug due to my
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
Zhongxing Xu [Wed, 18 Mar 2009 01:54:31 +0000 (01:54 +0000)]
Use a work list to recursively build up the subregion mapping, and mark live
var region roots.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67152
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 01:48:37 +0000 (01:48 +0000)]
Driver: Implement JoinedAndSeparateArg::getValue and add parsing test
case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67151
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 01:39:08 +0000 (01:39 +0000)]
Driver: UnknownHostInfo was always returning 0.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67150
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 01:38:48 +0000 (01:38 +0000)]
Driver: Use PrettyStackTrace.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67149
91177308 -0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Wed, 18 Mar 2009 01:16:08 +0000 (01:16 +0000)]
cleanup instantiation code, tighten testcase
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67148
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 18 Mar 2009 01:10:22 +0000 (01:10 +0000)]
Fix failing test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67147
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 18 Mar 2009 01:09:40 +0000 (01:09 +0000)]
Driver: Release Host, ToolChain, and Tool implementations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67146
91177308 -0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Wed, 18 Mar 2009 00:55:04 +0000 (00:55 +0000)]
instantiate ?: expressions
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67145
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 18 Mar 2009 00:36:05 +0000 (00:36 +0000)]
The scope representation can now be either a DeclContext pointer or a
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
Daniel Dunbar [Wed, 18 Mar 2009 00:12:31 +0000 (00:12 +0000)]
Driver: Add test case for -ccc-clang-archs (which, it turns out, was
inverted).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67135
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 17 Mar 2009 23:49:44 +0000 (23:49 +0000)]
Small sanity-checking testcase
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67133
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 23:39:24 +0000 (23:39 +0000)]
Driver: Add test case for various parts of binding (no-integrated-cpp,
-ccc-no-clang, -ccc-no-clang-cxx, -ccc-no-clang-cpp, -fsyntax-only).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67131
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 23:30:47 +0000 (23:30 +0000)]
Test had extra line which was masking actual failures.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67130
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 23:26:35 +0000 (23:26 +0000)]
Driver: Add test for pipelining for analyzer and precompiler.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67129
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 17 Mar 2009 23:17:04 +0000 (23:17 +0000)]
pull a nested conditional + comment out into its own variable,
no functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67128
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 17 Mar 2009 23:03:47 +0000 (23:03 +0000)]
don't crash when sentinel attribute is used on function without a prototype,
discovered as part of PR3817
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67127
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 17 Mar 2009 22:51:02 +0000 (22:51 +0000)]
Fix Type::getDesugaredType() to remove all direct sugar on
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
Daniel Dunbar [Tue, 17 Mar 2009 22:47:06 +0000 (22:47 +0000)]
Driver: Add -ccc-print-bindings option (for testing); the Python
driver has no corresponding option.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67125
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 22:45:24 +0000 (22:45 +0000)]
Driver: Add name to Tool (for testing/debugging) and move GCC_* tools
into gcc:: namespace.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67120
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 17 Mar 2009 22:43:44 +0000 (22:43 +0000)]
Stub out some code for support for NSDeallocateObject. This is enabled yet until
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
Chris Lattner [Tue, 17 Mar 2009 22:24:01 +0000 (22:24 +0000)]
GCC 4.0 isn't happy with VISIBILITY_HIDDEN on a namespace.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67112
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 22:18:43 +0000 (22:18 +0000)]
Driver: GCC 4.0 isn't happy with VISIBILITY_HIDDEN on a namespace.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67110
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 22:07:58 +0000 (22:07 +0000)]
Driver: Stub out generic GCC tool selection (missed a file)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67109
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 22:07:31 +0000 (22:07 +0000)]
Driver: Stub out generic GCC tool selection.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67108
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 21:38:00 +0000 (21:38 +0000)]
Driver: Stub out generic GCC tool chain implementation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67107
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 21:29:52 +0000 (21:29 +0000)]
Driver: Make sure to get the default arch name from the tool chain, not the
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
Daniel Dunbar [Tue, 17 Mar 2009 21:21:26 +0000 (21:21 +0000)]
Driver: Pass HostInfo reference into ToolChain.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67105
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 17 Mar 2009 21:15:40 +0000 (21:15 +0000)]
Refactor instantiation of declarations within a template into a much
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
Daniel Dunbar [Tue, 17 Mar 2009 20:45:45 +0000 (20:45 +0000)]
Driver: Pass Driver reference down into Host info, which will need it
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
Daniel Dunbar [Tue, 17 Mar 2009 20:44:29 +0000 (20:44 +0000)]
Driver: Fix typo ArgList destructor.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67101
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 17 Mar 2009 19:42:23 +0000 (19:42 +0000)]
retain/release checker: Add support for reasoning about -dealloc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67094
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 17 Mar 2009 19:05:46 +0000 (19:05 +0000)]
Implement instantiation of enums within class templates. This isn't
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
Daniel Dunbar [Tue, 17 Mar 2009 19:00:50 +0000 (19:00 +0000)]
Driver: Hide HostInfo implementations.
- 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
Daniel Dunbar [Tue, 17 Mar 2009 18:51:42 +0000 (18:51 +0000)]
Driver: Add two option form of ArgList::getLastArg.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67090
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 17:53:55 +0000 (17:53 +0000)]
Driver: Add logic for computing where to put job outputs (pipe,
temporary file, user provided name, derived name).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67088
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 17:51:56 +0000 (17:51 +0000)]
Driver: Add list of temporary and result files to Compilation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67087
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 17:51:18 +0000 (17:51 +0000)]
Add ArgList::MakeArgString and make ArgList::Make* const.
- 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
Gabor Greif [Tue, 17 Mar 2009 11:39:38 +0000 (11:39 +0000)]
typo
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67081
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 17 Mar 2009 05:53:35 +0000 (05:53 +0000)]
Initialize the cleanup.dst variable if necessary. Fixes PR3789.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67075
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 17 Mar 2009 05:49:13 +0000 (05:49 +0000)]
We want to grep the output, not the input :-)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67074
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 17 Mar 2009 04:12:06 +0000 (04:12 +0000)]
Fix unused variable warning in -Asserts mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67073
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 17 Mar 2009 00:28:02 +0000 (00:28 +0000)]
Handle ImplicitCastExprs when instantiating templates.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67063
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 16 Mar 2009 23:47:53 +0000 (23:47 +0000)]
Fix struct field's debug info.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67062
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 16 Mar 2009 23:35:25 +0000 (23:35 +0000)]
Fix a problem noticed by Anders, where we were creating
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
Sebastian Redl [Mon, 16 Mar 2009 23:22:08 +0000 (23:22 +0000)]
Almost complete implementation of rvalue references. One bug, and a few 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
Douglas Gregor [Mon, 16 Mar 2009 23:06:59 +0000 (23:06 +0000)]
Build system changes to use TableGen to generate the various
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
Chris Lattner [Mon, 16 Mar 2009 20:06:22 +0000 (20:06 +0000)]
some updates, Daniel points out that this is woefully out of date.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67050
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 16 Mar 2009 18:41:18 +0000 (18:41 +0000)]
simplify this code by reading the decision from LangOptions instead
of recomputing the property from command line options.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67047
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 16 Mar 2009 18:19:21 +0000 (18:19 +0000)]
Check signedness of bitfield sizes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67045
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 16 Mar 2009 17:28:26 +0000 (17:28 +0000)]
We support static_assert.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67043
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 16 Mar 2009 06:56:51 +0000 (06:56 +0000)]
Driver: Implement majority tool binding logic.
- Still need code for determining proper output location.
- Doesn't work yet, of course, as the host isn't providing real
tool chains.
- Interface still has a few warts, but has gotten a nice bit of
polish during the rewrite.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67038
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 16 Mar 2009 06:42:30 +0000 (06:42 +0000)]
Driver: Migrate some data into the Compilation; after pipelining
access to most data should go through the current Compilation, not the
Driver (which shouldn't be specialized on variables for a single
compilation).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67037
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 16 Mar 2009 05:25:36 +0000 (05:25 +0000)]
Driver: Sketch Tool and ToolChain classes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67036
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 16 Mar 2009 05:17:44 +0000 (05:17 +0000)]
Driver: Include Casting header definitions in a few places, add
Action::getInputs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67035
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Sun, 15 Mar 2009 22:02:01 +0000 (22:02 +0000)]
Parser support for rvalue references.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67033
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sun, 15 Mar 2009 20:12:13 +0000 (20:12 +0000)]
(Hopefully) instantiate dependent array types correctly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67032
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sun, 15 Mar 2009 18:44:04 +0000 (18:44 +0000)]
Handle static_asserts when instantiating structs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67031
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sun, 15 Mar 2009 18:34:13 +0000 (18:34 +0000)]
Add the ability to clone integer and string literals. Use it when instantiating template expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67030
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Sun, 15 Mar 2009 17:47:39 +0000 (17:47 +0000)]
Convert a bunch of actions to smart pointers, and also bring PrintParserCallbacks a bit more in line with reality.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67029
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Sun, 15 Mar 2009 17:43:26 +0000 (17:43 +0000)]
Fix bitfield-instantiation ownership bug noticed by Anders
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67028
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sun, 15 Mar 2009 17:35:16 +0000 (17:35 +0000)]
Make sure to release the expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67027
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Sun, 15 Mar 2009 10:42:31 +0000 (10:42 +0000)]
Keep diagnostic td in sync with r67015.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67026
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 15 Mar 2009 06:39:56 +0000 (06:39 +0000)]
Add note on theoretical IRgen improvement.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67024
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 15 Mar 2009 06:05:20 +0000 (06:05 +0000)]
Remove a FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67022
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 15 Mar 2009 05:58:43 +0000 (05:58 +0000)]
Fix comment typo.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67021
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 15 Mar 2009 03:16:47 +0000 (03:16 +0000)]
Only intptr_t is protected by __intptr_t_defined.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67018
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 15 Mar 2009 01:46:37 +0000 (01:46 +0000)]
Driver: Typo fix.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67017
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 15 Mar 2009 01:40:22 +0000 (01:40 +0000)]
Driver: claim input arguments when building phases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67016
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 15 Mar 2009 01:38:15 +0000 (01:38 +0000)]
Driver: Start warning about unused arguments.
- This has a number of current flaws, enabling now to flush out
problems while bringing up other parts.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67015
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 15 Mar 2009 00:48:16 +0000 (00:48 +0000)]
Driver: Update ArgList::{hasArg,getLastArg} to optionally claim the
arguments if they exist.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67014
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 15 Mar 2009 00:11:28 +0000 (00:11 +0000)]
Don't accept '$' in identifiers in assembler-with-cpp mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67013
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Sat, 14 Mar 2009 15:58:54 +0000 (15:58 +0000)]
Revert the switch to the tablegen diags. It fails for seperate objdir builds and cmake builds, and I have no clue what to do about it. Revisit this after someone with a clue about the build systems has looked at it.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67009
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Sat, 14 Mar 2009 12:00:12 +0000 (12:00 +0000)]
Switch diagnostics from .def to tablegen files. Please validate the Windows build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67007
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Sat, 14 Mar 2009 10:09:49 +0000 (10:09 +0000)]
Update tablegen diagnostic files to be in sync with the def files.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67004
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sat, 14 Mar 2009 00:46:46 +0000 (00:46 +0000)]
Update checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66999
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sat, 14 Mar 2009 00:33:21 +0000 (00:33 +0000)]
Handle dependent types/exprs in static_assert expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66997
91177308 -0d34-0410-b5e6-
96231b3b80d8