Argyrios Kyrtzidis
7260d8f57b
Do a compiler check that we use one of the types from PointerUnion[N], instead of a runtime check.
...
llvm-svn: 127145
2011-03-07 01:30:20 +00:00
Anders Carlsson
878b3e2b98
Check in the implementation as well...
...
llvm-svn: 127144
2011-03-07 01:28:33 +00:00
Anders Carlsson
793aff18ef
Add a non-static FixupRelativePath to FileManager.
...
llvm-svn: 127143
2011-03-07 01:27:37 +00:00
Joerg Sonnenberger
f496164ceb
Redo part of r127137:
...
Pass down the correct C->getArgs, but keep it with the original
DerivedArgList type. Slightly adjust the MakeIndex call for the
different base type. This unbreaks the handling of --no-mangle on Darwin.
llvm-svn: 127142
2011-03-07 01:15:29 +00:00
Douglas Gregor
cfee35b845
Remove the AST printer (-ast-print-xml), which is too incomplete and
...
too low-level to actually be useful but is just interesting enough for
people to try to use it (which won't actually work beyond toy examples).
To bring back the AST printer, it needs to be:
- Complete, covering all of C/C++/Objective-C
- Documented, with appropriate Schema against which we can validate
the output
- Designed for C/C++/Objective-C, not Clang's specific ASTs
- Stable across Clang versions
- Well-tested
llvm-svn: 127141
2011-03-07 01:03:30 +00:00
NAKAMURA Takumi
3e76b502a4
Windows/PathV2.inc: Eliminate redundant condition. DWORD is unsigned.
...
llvm-svn: 127140
2011-03-07 00:12:53 +00:00
Joerg Sonnenberger
9c8ad5fe02
Explicitly initialize CCCIsCPP
...
llvm-svn: 127139
2011-03-07 00:09:32 +00:00
Rafael Espindola
871cfde1c2
Don't internalize available_externally functions. We already did the right
...
thing for variables.
llvm-svn: 127138
2011-03-06 23:41:34 +00:00
Joerg Sonnenberger
b86f5f4106
If called as *cpp or *cpp-[^-]*, run only the preprocessor. If no
...
input is specified, use stdin implicitly. Based on a patch from
Roman Divacky.
llvm-svn: 127137
2011-03-06 23:31:01 +00:00
Douglas Gregor
19da4e4397
Revert r126422 "Use private linkage to avoid symbol conflicts in
...
corner cases like the one in PR9301." which caused PR9416.
llvm-svn: 127136
2011-03-06 23:28:21 +00:00
Chris Lattner
cf0eebc6c9
remove another jeff link
...
llvm-svn: 127135
2011-03-06 23:00:33 +00:00
Abramo Bagnara
8ec9e07ed6
Used a nicer cast.
...
llvm-svn: 127134
2011-03-06 22:48:24 +00:00
Anders Carlsson
b5c356a4d5
Convert FileManager::FixupRelativePath over to using PathV2.
...
llvm-svn: 127133
2011-03-06 22:25:35 +00:00
Abramo Bagnara
ead67d9b88
Improved type source location for long long type.
...
llvm-svn: 127132
2011-03-06 22:21:56 +00:00
Eric Christopher
9cb33deebf
Typo.
...
llvm-svn: 127131
2011-03-06 21:13:45 +00:00
NAKAMURA Takumi
3b78ef47fe
test/PCH/headersearch.cpp: Tweak for Windows hosts especially cygming.
...
This test requires shell feature, to change working directory.
On Windows, current directory cannot be moved nor removed.
llvm-svn: 127130
2011-03-06 20:44:33 +00:00
Douglas Gregor
528ad93924
We may fail to map a declaration in a template to its instantiated
...
declaration because of interesting ordering dependencies while
instantiating a class template or member class thereof. Complain,
rather than asserting (+Asserts) or silently rejecting the code
(-Asserts).
Fixes the crash-on-invalid in PR8965.
llvm-svn: 127129
2011-03-06 20:12:45 +00:00
Douglas Gregor
d9bb152821
Fix driver for thumb-capable ARM hosts, from Mikko Lehtonen!
...
llvm-svn: 127128
2011-03-06 19:11:49 +00:00
Douglas Gregor
c81a7a2591
Rename the type argument for the iboutletcollection attribute to not
...
conflict with MinGW headers, from Kirk Beitz!
llvm-svn: 127127
2011-03-06 18:55:32 +00:00
Anders Carlsson
9bb83e85b8
Write CXX base specifier offsets for chained ASTs.
...
llvm-svn: 127126
2011-03-06 18:41:18 +00:00
Anders Carlsson
80756f6240
When serializing a DeclRefExpr, always store the number of explicit template
...
arguments at the same offset, since it's needed when creating the empty
DeclRefExpr when deserializing. Fixes a memory corruption issue that would lead
to random bugs and crashes.
llvm-svn: 127125
2011-03-06 18:19:42 +00:00
Douglas Gregor
189c0e8923
Add MinGW GCC 4.5.2 include paths, from Matthieu Monrocq
...
llvm-svn: 127124
2011-03-06 18:00:59 +00:00
Douglas Gregor
69735112d0
Fix copy-and-paste typo in the transformation of Microsoft __uuidof expressions, from Eric Niebler via John Wiegley
...
llvm-svn: 127123
2011-03-06 17:40:41 +00:00
Douglas Gregor
71a2f72f1f
xpose HeaderSearch::SearchDirs to tools,s, from Paul Holden
...
llvm-svn: 127122
2011-03-06 17:33:53 +00:00
Anders Carlsson
829c4134b8
Correctly unwrap 'auto' types. Fixes PR9414.
...
llvm-svn: 127121
2011-03-06 16:43:04 +00:00
Abramo Bagnara
5022863fd8
Completed source ranges fixes for all classes inheriting from TypeDecl.
...
llvm-svn: 127120
2011-03-06 16:09:14 +00:00
Abramo Bagnara
b3185b00c5
Fixed TypedefDecl and TemplateTypeParameter source range.
...
llvm-svn: 127119
2011-03-06 15:48:19 +00:00
Sebastian Redl
7c6c9e971c
Reinstate r127112, "Propagate new-style exception spec information to ExtProtoInfo.", this time with the missing header.
...
llvm-svn: 127118
2011-03-06 10:52:04 +00:00
Douglas Gregor
d99609ae48
When performing template argument deduction for a non-reference
...
conversion function when we're binding the result to a reference, drop
cv-qualifiers on the type we're referring to, since we should be
deducing a type that can be adjusted (via cv-qualification) to the
requested type. Fixes PR9336, and the remaining Boost.Assign failure.
llvm-svn: 127117
2011-03-06 09:03:20 +00:00
Nick Lewycky
92db8e8e39
ConstantInt has some getters which return ConstantInt's or ConstantVector's of
...
the value splatted into every element. Extend this to getTrue and getFalse which
by providing new overloads that take Types that are either i1 or <N x i1>. Use
it in InstCombine to add vector support to some code, fixing PR8469!
llvm-svn: 127116
2011-03-06 03:36:19 +00:00
NAKAMURA Takumi
c92335a87c
Revert r127112, "Propagate new-style exception spec information to ExtProtoInfo."
...
It seems missing "clang/Basic/ExceptionSpecificationType.h".
llvm-svn: 127115
2011-03-06 00:17:36 +00:00
NAKAMURA Takumi
0d8150f279
lib/CodeGen/AsmPrinter/CMakeLists.txt: Fix CMake build, following up to r127099.
...
llvm-svn: 127114
2011-03-06 00:13:15 +00:00
Andrew Trick
dd01732e63
Disable a couple of experimental heuristics to get the best results from the current implementation of -pre-RA-sched=list-ilp.
...
llvm-svn: 127113
2011-03-06 00:03:32 +00:00
Sebastian Redl
69d37125a9
Propagate new-style exception spec information to ExtProtoInfo.
...
llvm-svn: 127112
2011-03-05 22:42:26 +00:00
Sebastian Redl
802a45332a
Propagate new-style exception spec information to Declarator.
...
llvm-svn: 127111
2011-03-05 22:42:13 +00:00
Benjamin Kramer
75e7a147ae
Avoid zero-sized allocations when copying a fresh DenseMap.
...
llvm-svn: 127110
2011-03-05 22:00:28 +00:00
Benjamin Kramer
01afbf57dc
Revert r127079: "test/Makefile: Use $(ECHOPATH) to make lit.site.cfg(s)."
...
It depends on LLVM r127073 that was reverted and is now blocking "make test"
llvm-svn: 127109
2011-03-05 20:57:36 +00:00
Douglas Gregor
9d9f8db4bc
When substituting in for a template name, do not produce a qualified
...
template name as the result of substitution. The qualifier is handled
separately by the tree transformer, so we would end up in an
inconsistent state.
This is actually the last bit of PR9016, and possibly also fixes
PR8965. It takes Boost.Icl from "epic fail" down to a single failure.
llvm-svn: 127108
2011-03-05 20:06:51 +00:00
Jakob Stoklund Olesen
42fc943f21
Revert r127073: "Introduce $(ECHOPATH) to print DOSish path string on MSYS bash for alternative of $(ECHO)."
...
It broke the llvm-gcc-native-mingw32 buildbot, and we need all of them to be green for the 2.9 branch.
Takumi, please reapply after we branch, preferably with a fix ;-)
llvm-svn: 127107
2011-03-05 18:55:06 +00:00
Anton Korobeynikov
692f633df9
ARM assembler stuff is crazy: for .setfp positive values of offset corresponds to "add" instruction, not to "sub" as in .pad case
...
llvm-svn: 127106
2011-03-05 18:44:00 +00:00
Anton Korobeynikov
9e66cbb366
In Thumb1 mode the constant might be materialized via the load from constpool. Emit unwinding information in case when this load from constpool is used to change the stack pointer in the prologue.
...
llvm-svn: 127105
2011-03-05 18:43:55 +00:00
Anton Korobeynikov
a8d177b2d4
Implement frame unwinding information emission for Thumb1. Not finished yet because there is no way given the constpool index to examine the actual entry: the reason is clones inserted by constant island pass, which are not tracked at all! The only connection is done during asmprinting time via magic label names which is really gross and needs to be eventually fixed.
...
llvm-svn: 127104
2011-03-05 18:43:50 +00:00
Anton Korobeynikov
51537f1c7f
Add unwind information emission for thumb stuff
...
llvm-svn: 127103
2011-03-05 18:43:43 +00:00
Anton Korobeynikov
acca7adf16
Handle MI flags inside Thumb2SizeReduction pass.
...
llvm-svn: 127102
2011-03-05 18:43:38 +00:00
Anton Korobeynikov
e7410dd0d5
Preliminary support for ARM frame save directives emission via MI flags.
...
This is just very first approximation how the stuff should be done
(e.g. ARM-only for now). More to follow.
llvm-svn: 127101
2011-03-05 18:43:32 +00:00
Anton Korobeynikov
961013686e
Provide hooks to set MI flags in MachineInstrBuilder
...
llvm-svn: 127100
2011-03-05 18:43:20 +00:00
Anton Korobeynikov
a7ec2dcefd
Some first rudimentary support for ARM EHABI: print exception table in "text mode".
...
llvm-svn: 127099
2011-03-05 18:43:15 +00:00
Anton Korobeynikov
65cff414b6
Add FrameSetup MI flags
...
llvm-svn: 127098
2011-03-05 18:43:04 +00:00
Anton Korobeynikov
489bedcc24
Shorten AsmPrinterFlags filed to accomodate for future Flags field
...
llvm-svn: 127097
2011-03-05 18:42:54 +00:00
Jakob Stoklund Olesen
27e0a4ab86
Work around a coalescer bug.
...
The coalescer can in very rare cases leave too large live intervals around after
rematerializing cheap-as-a-move instructions.
Linear scan doesn't really care, but live range splitting gets very confused
when a live range is killed by a ghost instruction.
I will fix this properly in the coalescer after 2.9 branches.
llvm-svn: 127096
2011-03-05 18:33:49 +00:00