Mikhail Glushenkov
62d1da0bb9
Pass -m32/-m64 to assembler.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100064 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 23:51:55 +00:00
Bill Wendling
9e9cca424c
Revert r100056. It was causing a failure on MSVC.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100062 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 23:26:26 +00:00
Stuart Hastings
f8df814869
Reverting 100048; it broke two Frontend debug info tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100058 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 23:08:46 +00:00
Bill Wendling
bbd51cd0a1
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100056 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 22:54:38 +00:00
Bob Wilson
368454976c
Add a redundant PHI testcase for SSAUpdater to go with svn r100047.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100050 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 21:38:43 +00:00
Stuart Hastings
a88cb38d02
Debug info can now properly represent functions inside classes inside other functions. Partial fix for Radar 7424645.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100048 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 21:10:54 +00:00
Bob Wilson
a0c6057061
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100047 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 20:51:00 +00:00
Dale Johannesen
536d31b5b3
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100044 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 20:37:15 +00:00
Gabor Greif
4e86da71b3
testcase for r99914, provided by baldrick!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100043 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 20:37:13 +00:00
Chris Lattner
563d83ff53
reduce indentation, minor cleanups.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100042 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 20:32:51 +00:00
Benjamin Kramer
bbb88db993
Reduce string trashing.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100038 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 20:15:45 +00:00
Jakob Stoklund Olesen
85ffee2c78
Use spaces, not tabs
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100037 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 20:05:12 +00:00
Benjamin Kramer
345ef343cc
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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100035 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 19:34:01 +00:00
Daniel Dunbar
e09ccab0ce
Add a FIXME.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100034 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 19:14:05 +00:00
Bill Wendling
d93bf04a07
Comment the changes for r98218 and friends inside the source code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100033 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 18:48:58 +00:00
Daniel Dunbar
c3681d334a
lit: Make sure to close any files we open as part of redirection.
...
PR6753.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100032 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 18:48:43 +00:00
Bill Wendling
5e1b55d672
Comment the changes for r98218 and friends inside the source code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100031 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 18:47:10 +00:00
Jakob Stoklund Olesen
5f282b5dfd
Fix PR6750. Don't try to merge a DomainValue with itself.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100016 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 17:13:16 +00:00
Benjamin Kramer
41d43ebac5
s/getNameStr/getName/
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100011 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 16:06:22 +00:00
Benjamin Kramer
4ef68221a5
Bump SmallString size a bit to avoid malloc trashing.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100010 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 16:04:26 +00:00
Torok Edwin
61633368cf
AddSignalHandler was not releasing the critical section on win32.
...
Patch from Gianluigi Tiesi!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100003 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 12:07:16 +00:00
Nick Lewycky
655fd03360
Small fixes to this documentation. Remove mention of uint/int type, fix typo
...
in 'number'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100001 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 07:50:17 +00:00
Chris Lattner
cfd3188a11
reduce indentation
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99999 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 06:09:04 +00:00
Chris Lattner
1d65ba732c
tidy up
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99998 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 06:06:37 +00:00
Chris Lattner
7a2f3e0b46
microoptimize this hot method, also making it more
...
consistent with other similar ones.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99997 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 05:53:47 +00:00
Chris Lattner
ff741ab709
MI != 0 is checked in the assert right above this.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99995 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 05:42:48 +00:00
Chris Lattner
14d750d0ad
use the isDebugValue() predicate and pop_back_val()
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99993 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 05:39:57 +00:00
Chris Lattner
ed7a77bfb2
assert is a function-like macro, not a control flow operator.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99992 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 05:36:29 +00:00
Duncan Sands
6417a6c99d
Correct comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99991 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 05:27:33 +00:00
Chris Lattner
4dd8163091
reduce indentation, fit in 80 cols and various other cosmetic cleanups.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99989 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 05:15:22 +00:00
Chris Lattner
b6c72b92c2
fix file header.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99987 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 04:26:23 +00:00
Chris Lattner
23dbf6683b
use the optimized debug info apis in sdisel.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99986 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 04:24:50 +00:00
Chris Lattner
5169c9e567
make irbuilder use the new optimized debug info accessors.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99984 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 04:09:11 +00:00
Chris Lattner
870cfcf9a6
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99982 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 03:34:40 +00:00
Jakob Stoklund Olesen
d363b4ebc7
Replace V_SET0 with variants for each SSE execution domain.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99975 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 00:40:13 +00:00
Jakob Stoklund Olesen
b16df90b48
Fix typo. Thank you, valgrind.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99974 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 00:40:08 +00:00
Jakob Stoklund Olesen
932df5e9f6
Not all platforms start symbols with _
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99959 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 23:12:48 +00:00
Chris Lattner
ec39f095f5
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99957 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 23:03:27 +00:00
Jakob Stoklund Olesen
bfcd61b907
Enable -sse-domain-fix by default. Now with tests!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99954 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 22:47:00 +00:00
Jakob Stoklund Olesen
428e152469
V_SETALLONES is an integer instruction.
...
Since it is just a pxor in disguise, we should probably expand it to a full
polymorphic triple.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99953 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 22:46:55 +00:00
Jakob Stoklund Olesen
357be7f289
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99952 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 22:46:53 +00:00
Bob Wilson
100f090add
Revert Mon Ping's change 99928, since it broke all the llvm-gcc buildbots.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99948 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 22:27:04 +00:00
Devang Patel
722f2290b8
Ignore invalid metadata.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99938 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 22:09:52 +00:00
Jakob Stoklund Olesen
adffc9d20e
Revert "Enable -sse-domain-fix by default. What could possibly go wrong?"
...
Not running 'make check-all' before committing is a bad idea.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99933 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 21:36:32 +00:00
Jakob Stoklund Olesen
90b9df4e6f
Enable -sse-domain-fix by default. What could possibly go wrong?
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99931 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 21:09:31 +00:00
Mon P Wang
808bab0169
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99928 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 20:55:56 +00:00
Chris Lattner
04e3b1ef78
move some method definitions to files that make sense.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99927 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 20:48:48 +00:00
Benjamin Kramer
991de14dd6
Introduce SpecificBumpPtrAllocator, a wrapper for BumpPtrAllocator which allows
...
only a single type of object to be allocated. Use it to make VNInfo destruction
typesafe.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99919 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 20:16:45 +00:00
Torok Edwin
820580dfa9
Typo noticed by Duncan.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99918 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 20:15:13 +00:00
Dan Gohman
4bb31bfaa3
Fix a grammaro.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99917 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 20:04:57 +00:00