Jakob Stoklund Olesen
1023f6bd98
Also convert SUBREG_TO_REG to a KILL when relevant, like the other subreg
...
instructions.
This does not affect codegen much because SUBREG_TO_REG is only used by X86 and
X86 does not use the register scavenger, but it prevents verifier errors.
llvm-svn: 106583
2010-06-22 22:11:07 +00:00
Bob Wilson
c5d712232d
Thumb1 functions using @llvm.returnaddress were not saving the incoming LR.
...
Radar 8031193.
llvm-svn: 106582
2010-06-22 22:04:24 +00:00
Benjamin Kramer
1e89cd804c
Avoid tolower, it's slow and unnecessary.
...
llvm-svn: 106580
2010-06-22 21:28:05 +00:00
Benjamin Kramer
b328d72d77
Turns out __cxa_demangle returns the size of the buffer instead of the size of
...
the demangled name. Fall back to strlen.
llvm-svn: 106579
2010-06-22 21:27:55 +00:00
Jim Ingham
05407f6b25
Make an explicit GetThreadSpecNoCreate accessor so you don't have to get the const-ness right to ensure you are not making a copy of the owning breakpoint's ThreadSpec in a breakpoint location. Also change the name from NoCopy to NoCreate since that's clearer.
...
llvm-svn: 106578
2010-06-22 21:12:54 +00:00
Eric Christopher
6250bd9e3c
Move a 64-bit test to the 64-bit file. Fixes an llvm-mc assertion
...
during test runs.
llvm-svn: 106577
2010-06-22 21:11:51 +00:00
Eric Christopher
e9c1bb6cb1
Look for and use a different darwin crash reporter library.
...
llvm-svn: 106576
2010-06-22 21:01:04 +00:00
Dale Johannesen
6d4802ba6c
Add SSE so these actually pass on non-X86 hosts.
...
llvm-svn: 106575
2010-06-22 20:54:03 +00:00
Jim Grosbach
6c275bc5a2
fix typo
...
llvm-svn: 106574
2010-06-22 20:52:02 +00:00
Gabor Greif
c89d2aad4c
use high-level accessors
...
llvm-svn: 106573
2010-06-22 20:40:38 +00:00
Bruno Cardoso Lopes
dc883cf45a
Fix a subtle multiclass bug: when using class inheritance on
...
a toplevel 'defm', make sure to properly resolve references.
llvm-svn: 106570
2010-06-22 20:30:50 +00:00
Bill Wendling
7e35d39fee
Corresponding test changes for r106564.
...
llvm-svn: 106569
2010-06-22 20:30:14 +00:00
Daniel Dunbar
a91c0ba88a
Driver: Remove some dead code left around after a refactoring. Found by the
...
Clang static analyzer!
llvm-svn: 106568
2010-06-22 20:18:18 +00:00
Gabor Greif
b575cf69f4
warmup ritual: use high-level argument accessors
...
llvm-svn: 106563
2010-06-22 19:46:37 +00:00
Mon P Wang
825639e849
Move v-binop-widen tests to X86 since they don't work on all platforms
...
llvm-svn: 106562
2010-06-22 19:40:50 +00:00
Ted Kremenek
55081f9317
Don't assert on C++ casts that are currently not handled by the static analyzer.
...
Instead, halt the analysis of the current path, which is what we do in GRExprEngine::ProcessStmt
for all other C++ constructs not currently handled by the analyzer.
llvm-svn: 106561
2010-06-22 19:05:10 +00:00
Devang Patel
e3fbbd19ed
Clone named metadata while cloning a module.
...
Reapply Bob's patch.
llvm-svn: 106560
2010-06-22 18:52:38 +00:00
Bruno Cardoso Lopes
3af915f84b
Reorganize logical and arithmetic SSE 1 & 2 instructions
...
llvm-svn: 106557
2010-06-22 18:17:40 +00:00
Bruno Cardoso Lopes
b91af24d3e
Reorganize SSE instructions, making easier to see oportunities for refactoring
...
llvm-svn: 106556
2010-06-22 18:09:32 +00:00
Dan Gohman
3570f81b1e
Move PHIElimination's SplitCriticalEdge for MachineBasicBlocks out
...
into a utility routine, teach it how to update MachineLoopInfo, and
make use of it in MachineLICM to split critical edges on demand.
llvm-svn: 106555
2010-06-22 17:25:57 +00:00
Fariborz Jahanian
a9f90275cc
Trying to make BuildBot happy again (related to PR7431).
...
llvm-svn: 106553
2010-06-22 17:08:32 +00:00
Argyrios Kyrtzidis
6e57c35513
Read/write CXXDeleteExpr from/to PCH.
...
llvm-svn: 106552
2010-06-22 17:07:59 +00:00
Douglas Gregor
db48cf3c31
Don't allow vector conversions to sneak in under the guise of
...
floating-point conversions or floating-integral conversions. We
really, really, really need to make isFloatingType() and friends not
apply to vector types.
llvm-svn: 106551
2010-06-22 16:52:27 +00:00
Fariborz Jahanian
7966aff294
Fixes a problem in generation of meta-data for
...
category implementation whereby property list was missing.
NeXt ObjC runtime (radar 8093297).
llvm-svn: 106550
2010-06-22 16:33:55 +00:00
Anders Carlsson
ea836bc41c
Switch over to the new caching version of getMangledName.
...
llvm-svn: 106549
2010-06-22 16:16:50 +00:00
Jakob Stoklund Olesen
9c47dac677
Remove the SimpleJoin optimization from SimpleRegisterCoalescing.
...
Measurements show that it does not speed up coalescing, so there is no reason
the keep the added complexity around.
Also clean out some unused methods and static functions.
llvm-svn: 106548
2010-06-22 16:13:57 +00:00
Anders Carlsson
2e2f4d2e6d
Add a new variant of getMangledName that caches the mangling for decls.
...
llvm-svn: 106547
2010-06-22 16:05:32 +00:00
Anders Carlsson
16d9f1788e
Add GlobalDecl::getCanonicalDecl.
...
llvm-svn: 106546
2010-06-22 16:00:14 +00:00
Benjamin Kramer
eb9165c08f
Reduce code duplication.
...
This also moves strlen out of the mutex scope.
llvm-svn: 106545
2010-06-22 15:28:34 +00:00
Benjamin Kramer
53a61dc531
Ensure GetDemangledName's thread safety by making the demangle buffer thread specific.
...
I'm not sure when multiple threads enter this method but a race-condition
causing a crash in malloc can be reproduced with this little script:
echo file $(which lldb) > cmd
echo "run\nbreak set -n main\nrun\nexit" >> cmd
lldb -s cmd
It may need a few runs before it crashes though.
llvm-svn: 106544
2010-06-22 15:28:29 +00:00
Dan Gohman
3986af0c5a
Split out the code for finding a unique loop predecessor from
...
getLoopPreheader into a separate function, for clients which don't
require a proper preheader.
llvm-svn: 106543
2010-06-22 15:25:42 +00:00
Dan Gohman
d2d1ae105d
Use pre-increment instead of post-increment when the result is not used.
...
llvm-svn: 106542
2010-06-22 15:08:57 +00:00
Douglas Gregor
a46d66122f
When we ask for the enumerators of an EnumDecl, make sure we get them even if we have a EnumDecl that is not the definition of the enumeration
...
llvm-svn: 106541
2010-06-22 14:45:56 +00:00
Douglas Gregor
c9ea2d5a67
In C++, allow a declaration of an enum to follow a definition of that
...
enum as a GNU extension.
llvm-svn: 106540
2010-06-22 14:26:35 +00:00
Dan Gohman
5666ad7381
Add a comment explaining a non-obvious API.
...
llvm-svn: 106539
2010-06-22 13:57:08 +00:00
Dan Gohman
2ceaa71bdb
Add an explicit keyword.
...
llvm-svn: 106538
2010-06-22 13:53:29 +00:00
Dan Gohman
f820bd327d
Allow "exhaustive" trip count evaluation on phi nodes with all
...
constant operands.
llvm-svn: 106537
2010-06-22 13:15:46 +00:00
Argyrios Kyrtzidis
75000b6814
Fix PR7180.
...
For
void f( a:🅱️ :c );
we would cache the tokens "a:🅱️ :" but then we would try to annotate them using the range "a::".
Before annotating them with the (invalid) C++ scope spec, set it to the range of "a:🅱️ :".
llvm-svn: 106536
2010-06-22 11:30:04 +00:00
Benjamin Kramer
104819c6eb
Move trivial parts of UserID into the header.
...
llvm-svn: 106535
2010-06-22 10:44:12 +00:00
Argyrios Kyrtzidis
69da4a8f07
Support emitting/reading function templates to/from PCH.
...
llvm-svn: 106534
2010-06-22 09:55:07 +00:00
Argyrios Kyrtzidis
ae85e2414c
-Introduce PCHReader::ReadTemplateArgumentLoc()
...
-Introduce PCHWriter::AddTemplateArgumentLocInfo()
-Modify PCHWriter::AddTemplateArgumentLoc() to also write TemplateArgumentLoc's TemplateArgument
and move the existing calls of AddTemplateArgumentLoc() to AddTemplateArgumentLocInfo().
llvm-svn: 106533
2010-06-22 09:54:59 +00:00
Argyrios Kyrtzidis
cb6f346873
Make it easier to read/write the template part of FunctionDecl.
...
Introduce:
-FunctionDecl::getTemplatedKind() which returns an enum signifying what kind of templated
FunctionDecl it is.
-An overload of FunctionDecl::setFunctionTemplateSpecialization() which accepts arrays of
TemplateArguments and TemplateArgumentLocs
-A constructor to TemplateArgumentList which accepts an array of TemplateArguments.
llvm-svn: 106532
2010-06-22 09:54:51 +00:00
Benjamin Kramer
1e63c74f60
Silence warning about C++-style comments.
...
llvm-svn: 106531
2010-06-22 09:29:44 +00:00
Zhongxing Xu
4505747979
Add a bunch of stream APIs to SteamChecker.
...
llvm-svn: 106530
2010-06-22 07:50:21 +00:00
Devang Patel
f040dec68a
Revert 106528. It is causing self host failures.
...
llvm-svn: 106529
2010-06-22 06:14:09 +00:00
Devang Patel
b195eb4acf
Do not rely on DenseMap slot which can be easily invalidated when DenseMap grows.
...
llvm-svn: 106528
2010-06-22 05:16:56 +00:00
Douglas Gregor
ef4a2a2b54
Apply array-to-pointer decay when instantiating a MemberExpr. Fixes
...
PR7405, patch by Kyle Lippincott!
llvm-svn: 106523
2010-06-22 02:41:05 +00:00
Douglas Gregor
de049cdbe6
Attempt to fix test
...
llvm-svn: 106522
2010-06-22 02:17:07 +00:00
Bob Wilson
6c1fc79cab
Revert my change to clone named metadata. Buildbots are complaining.
...
--- Reverse-merging r106508 into '.':
U lib/Transforms/Utils/CloneModule.cpp
llvm-svn: 106521
2010-06-22 02:08:51 +00:00
Dan Gohman
2370e2fe0f
When unfolding a load, avoid assuming which instruction that
...
kill and dead flags will end up on.
llvm-svn: 106520
2010-06-22 02:07:21 +00:00