Bill Wendling
5aa9aa529b
Reapply r100056. It doesn't look like it's the one that's causing a failure.
...
llvm-svn: 100065
2010-04-01 00:00:43 +00:00
Mikhail Glushenkov
a44a629d14
Pass -m32/-m64 to assembler.
...
llvm-svn: 100064
2010-03-31 23:51:55 +00:00
Bill Wendling
c463229fea
Revert r100056. It was causing a failure on MSVC.
...
llvm-svn: 100062
2010-03-31 23:26:26 +00:00
Stuart Hastings
7c358afa1d
Reverting 100048; it broke two Frontend debug info tests.
...
llvm-svn: 100058
2010-03-31 23:08:46 +00:00
Bill Wendling
43ca5bc535
Rewrite CorrectExtraCFGEdges() to make it more understandable.
...
* Set the "DestA" and "DestB" according to how they're understood by the
method. I.e., if one or both of them should point to the "fall through" block,
then point to the fall through block.
* Improve the loop that removes superfluous edges to be more understandable.
llvm-svn: 100056
2010-03-31 22:54:38 +00:00
Bob Wilson
b66bed7e3c
Add a redundant PHI testcase for SSAUpdater to go with svn r100047.
...
llvm-svn: 100050
2010-03-31 21:38:43 +00:00
Stuart Hastings
3a9c4bcef8
Debug info can now properly represent functions inside classes inside other functions. Partial fix for Radar 7424645.
...
llvm-svn: 100048
2010-03-31 21:10:54 +00:00
Bob Wilson
2a872616de
Rewrite part of the SSAUpdater to be more careful about inserting redundant
...
PHIs. The previous algorithm was unable to reliably detect when existing
PHIs in a cycle can be reused. I'm still working on reducing a testcase.
Radar 7711900.
llvm-svn: 100047
2010-03-31 20:51:00 +00:00
Dale Johannesen
03396f06c0
Fix a nasty dangling-pointer heisenbug that could
...
generate wrong code pretty much anywhere AFAICT.
A case that hits the bug reproducibly is impossible,
but the situation was like this:
Addr = ...
Store -> Addr
Addr2 = GEP , 0, 0
Store -> Addr2
Handling the first store, the code changed replaced Addr
with a sunkaddr and deleted Addr, but not its table
entry. Code in OptimizedBlock replaced Addr2 with a
bitcast; if that happened to reuse the memory of Addr,
the old table entry was erroneously found when handling
the second store.
llvm-svn: 100044
2010-03-31 20:37:15 +00:00
Gabor Greif
b7ecfb134b
testcase for r99914, provided by baldrick!
...
llvm-svn: 100043
2010-03-31 20:37:13 +00:00
Chris Lattner
9b4a8c9ba4
reduce indentation, minor cleanups.
...
llvm-svn: 100042
2010-03-31 20:32:51 +00:00
Benjamin Kramer
b67e098ab6
Reduce string trashing.
...
llvm-svn: 100038
2010-03-31 20:15:45 +00:00
Jakob Stoklund Olesen
0d11c5907d
Use spaces, not tabs
...
llvm-svn: 100037
2010-03-31 20:05:12 +00:00
Benjamin Kramer
a71501e0dd
DwarfDebug: Allocate DIEValues with a BumpPtrAllocator. Most of them are
...
POD-like anyway, so we don't even care about calling their d'tors (DIEBlock
being the exception).
~6% less mallocs and ~1% compile time improvement on clang -O0 -g oggenc.c
llvm-svn: 100035
2010-03-31 19:34:01 +00:00
Daniel Dunbar
1a27d28404
Add a FIXME.
...
llvm-svn: 100034
2010-03-31 19:14:05 +00:00
Bill Wendling
bcec041803
Comment the changes for r98218 and friends inside the source code.
...
llvm-svn: 100033
2010-03-31 18:48:58 +00:00
Daniel Dunbar
9c71d03e49
lit: Make sure to close any files we open as part of redirection.
...
PR6753.
llvm-svn: 100032
2010-03-31 18:48:43 +00:00
Bill Wendling
b5b138639d
Comment the changes for r98218 and friends inside the source code.
...
llvm-svn: 100031
2010-03-31 18:47:10 +00:00
Jakob Stoklund Olesen
a0f664e9ed
Fix PR6750. Don't try to merge a DomainValue with itself.
...
llvm-svn: 100016
2010-03-31 17:13:16 +00:00
Benjamin Kramer
192e50f7b1
s/getNameStr/getName/
...
llvm-svn: 100011
2010-03-31 16:06:22 +00:00
Benjamin Kramer
e006100c19
Bump SmallString size a bit to avoid malloc trashing.
...
llvm-svn: 100010
2010-03-31 16:04:26 +00:00
Torok Edwin
ba2f97fcb0
AddSignalHandler was not releasing the critical section on win32.
...
Patch from Gianluigi Tiesi!
llvm-svn: 100003
2010-03-31 12:07:16 +00:00
Nick Lewycky
967cac7bf6
Small fixes to this documentation. Remove mention of uint/int type, fix typo
...
in 'number'.
llvm-svn: 100001
2010-03-31 07:50:17 +00:00
Chris Lattner
7919973f2d
reduce indentation
...
llvm-svn: 99999
2010-03-31 06:09:04 +00:00
Chris Lattner
421f945e1f
tidy up
...
llvm-svn: 99998
2010-03-31 06:06:37 +00:00
Chris Lattner
9ff37808e4
microoptimize this hot method, also making it more
...
consistent with other similar ones.
llvm-svn: 99997
2010-03-31 05:53:47 +00:00
Chris Lattner
fac22403cb
MI != 0 is checked in the assert right above this.
...
llvm-svn: 99995
2010-03-31 05:42:48 +00:00
Chris Lattner
baad3cbf19
use the isDebugValue() predicate and pop_back_val()
...
llvm-svn: 99993
2010-03-31 05:39:57 +00:00
Chris Lattner
9653faca87
assert is a function-like macro, not a control flow operator.
...
llvm-svn: 99992
2010-03-31 05:36:29 +00:00
Duncan Sands
f2ded21752
Correct comment.
...
llvm-svn: 99991
2010-03-31 05:27:33 +00:00
Chris Lattner
d015147472
reduce indentation, fit in 80 cols and various other cosmetic cleanups.
...
llvm-svn: 99989
2010-03-31 05:15:22 +00:00
Chris Lattner
ffc6ab9d04
fix file header.
...
llvm-svn: 99987
2010-03-31 04:26:23 +00:00
Chris Lattner
1d2ea2510d
use the optimized debug info apis in sdisel.
...
llvm-svn: 99986
2010-03-31 04:24:50 +00:00
Chris Lattner
c02045830c
make irbuilder use the new optimized debug info accessors.
...
llvm-svn: 99984
2010-03-31 04:09:11 +00:00
Chris Lattner
27c9cacb63
add new apis for getting/setting !dbg metadata on
...
instructions. In addition to being a convenience,
they are faster than the old apis, particularly when
not going from an MDKindID like people should be
doing.
llvm-svn: 99982
2010-03-31 03:34:40 +00:00
Jakob Stoklund Olesen
58296f9543
Replace V_SET0 with variants for each SSE execution domain.
...
llvm-svn: 99975
2010-03-31 00:40:13 +00:00
Jakob Stoklund Olesen
13a7a0adff
Fix typo. Thank you, valgrind.
...
llvm-svn: 99974
2010-03-31 00:40:08 +00:00
Jakob Stoklund Olesen
c6213a8bc0
Not all platforms start symbols with _
...
llvm-svn: 99959
2010-03-30 23:12:48 +00:00
Chris Lattner
9ab48420db
Fix a major source of compile-time slowness at -O0 -g by optimizing
...
the storage of !dbg metadata kinds in the instruction themselves.
The on-the-side hash table works great for metadata that not-all
instructions get, or for metadata that only exists when optimizing.
But when compile-time is everything, it isn't great.
I'm not super thrilled with the fact that this plops a TrackingVH in
Instruction, because it grows it by 3 words. I'm investigating
alternatives, but this should be a step in the right direction in any
case.
llvm-svn: 99957
2010-03-30 23:03:27 +00:00
Jakob Stoklund Olesen
a027a6d4f2
Enable -sse-domain-fix by default. Now with tests!
...
llvm-svn: 99954
2010-03-30 22:47:00 +00:00
Jakob Stoklund Olesen
f97c39cc4c
V_SETALLONES is an integer instruction.
...
Since it is just a pxor in disguise, we should probably expand it to a full
polymorphic triple.
llvm-svn: 99953
2010-03-30 22:46:55 +00:00
Jakob Stoklund Olesen
1768b3d4a6
Renumber SSE execution domains for better code size.
...
SSEDomainFix will collapse to the domain with the lower number when it has a
choice. The SSEPackedSingle domain often has smaller instructions, so prefer
that.
llvm-svn: 99952
2010-03-30 22:46:53 +00:00
Bob Wilson
aae933cc81
Revert Mon Ping's change 99928, since it broke all the llvm-gcc buildbots.
...
llvm-svn: 99948
2010-03-30 22:27:04 +00:00
Devang Patel
2a2b092bf0
Ignore invalid metadata.
...
llvm-svn: 99938
2010-03-30 22:09:52 +00:00
Jakob Stoklund Olesen
ead811461a
Revert "Enable -sse-domain-fix by default. What could possibly go wrong?"
...
Not running 'make check-all' before committing is a bad idea.
llvm-svn: 99933
2010-03-30 21:36:32 +00:00
Jakob Stoklund Olesen
488d04e4e8
Enable -sse-domain-fix by default. What could possibly go wrong?
...
llvm-svn: 99931
2010-03-30 21:09:31 +00:00
Mon P Wang
9351ea594a
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
...
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)
A update of langref will occur in a subsequent checkin.
llvm-svn: 99928
2010-03-30 20:55:56 +00:00
Chris Lattner
542ebce5fa
move some method definitions to files that make sense.
...
llvm-svn: 99927
2010-03-30 20:48:48 +00:00
Benjamin Kramer
4b94ce229d
Introduce SpecificBumpPtrAllocator, a wrapper for BumpPtrAllocator which allows
...
only a single type of object to be allocated. Use it to make VNInfo destruction
typesafe.
llvm-svn: 99919
2010-03-30 20:16:45 +00:00
Torok Edwin
8b6e668f35
Typo noticed by Duncan.
...
llvm-svn: 99918
2010-03-30 20:15:13 +00:00