Anton Korobeynikov
479c8382f3
Add Mikhail to credits file
...
llvm-svn: 48700
2008-03-23 08:58:32 +00:00
Anton Korobeynikov
70548d835e
Add first proof-of-concept universal compiler driver framework based
...
on ideas mentioned in PR686.
Written by Mikhail Glushenkov and contributed by Codedgers, Inc.
Old llvmc will be removed soon after new one will have all its properties.
llvm-svn: 48699
2008-03-23 08:57:20 +00:00
Sam Bishop
ac92a13c86
The newest version of valgrind, 3.3.0, no longer appends PIDs to log filenames
...
by default. Adding a %p works with this new version and is backwards
compatible, though it looks a little funny.
llvm-svn: 48698
2008-03-23 03:42:18 +00:00
Bill Wendling
7e2a6c4112
New testcase.
...
llvm-svn: 48697
2008-03-22 22:27:01 +00:00
Bill Wendling
da2586f69a
Don't strip things when we're doing a debug build.
...
llvm-svn: 48696
2008-03-22 21:57:15 +00:00
Anton Korobeynikov
cec773d8e7
Honour built-in defines on win64 targets for automatically subtarget recognize.
...
Force stack alignment to 16 bytes on win targets.
llvm-svn: 48695
2008-03-22 21:18:22 +00:00
Anton Korobeynikov
07a789d2b5
Recognize "windows" in target triple, not only "win32"
...
llvm-svn: 48694
2008-03-22 21:12:53 +00:00
Owen Anderson
e3605ac108
Use normal naming convention for test.
...
llvm-svn: 48693
2008-03-22 21:08:33 +00:00
Anton Korobeynikov
b86e0936f1
Add information about callee-saved registers on Win64
...
llvm-svn: 48692
2008-03-22 21:04:01 +00:00
Anton Korobeynikov
7f125b2ba5
Add convenient helper for win64 check. Simplify things slightly.
...
llvm-svn: 48691
2008-03-22 20:57:27 +00:00
Anton Korobeynikov
7b4f4e1a86
Initial support for Win64 calling conventions. Still in early state.
...
llvm-svn: 48690
2008-03-22 20:37:30 +00:00
Ted Kremenek
fb475ec504
Changed merge operation for uninitialized values analysis to "intersect" (previous union).
...
The effect is that if a variable is uninitialized along a branch (but initialized along another), at merge points it is considered uninitialized. Previously we had the opposite behavior. The new behavior is more conservative, and more in line with gcc's behavior.
llvm-svn: 48689
2008-03-22 20:11:00 +00:00
Anton Korobeynikov
7ebdd255b5
Register EH frames emitted in JIT when using gcc unwinding runtime
...
llvm-svn: 48688
2008-03-22 08:53:09 +00:00
Anton Korobeynikov
dd8c695746
Fix merge error
...
llvm-svn: 48687
2008-03-22 08:50:08 +00:00
Anton Korobeynikov
3f7fab913d
Add testcase for prev. commit. Minor fixes
...
llvm-svn: 48686
2008-03-22 08:37:05 +00:00
Anton Korobeynikov
25b2e8203a
Aliasing chains cleanups: update langref, add check into verifier
...
llvm-svn: 48685
2008-03-22 08:36:14 +00:00
Anton Korobeynikov
72d5d42dbc
Support chained aliases for LLVM IR printing. This fixes PR2145
...
llvm-svn: 48684
2008-03-22 08:17:17 +00:00
Anton Korobeynikov
2fa75184f3
Another comments fixing
...
llvm-svn: 48683
2008-03-22 07:53:40 +00:00
Anton Korobeynikov
2fb3897f1b
Slightly increase default set size. It's cheap and won't hurt.
...
llvm-svn: 48682
2008-03-22 07:48:40 +00:00
Anton Korobeynikov
a56dcc977e
Typo fixes
...
llvm-svn: 48681
2008-03-22 07:48:08 +00:00
Chris Lattner
53ccb62712
implement an initial hack at a straight-line store -> memset optimization.
...
This fires dozens of times across spec and multisource, but I don't know
if it actually speeds stuff up. Hopefully the testers will show something
nice :)
llvm-svn: 48680
2008-03-22 05:37:16 +00:00
Chris Lattner
168be766a8
implement the logic for memset insertion and store deletion.
...
llvm-svn: 48679
2008-03-22 04:13:49 +00:00
Owen Anderson
5b993fd70d
Add a comment, and fix a bug where AllocateRW recurred to AllocateRWX instead of itself.
...
llvm-svn: 48677
2008-03-22 02:59:54 +00:00
Owen Anderson
c1e4e3e9a1
Add an AllocateRW to match AllocateRWX.
...
llvm-svn: 48676
2008-03-22 02:33:53 +00:00
Evan Cheng
31604a62f6
Teach DAG combiner to commute commutable binary nodes in order to achieve sdisel CSE.
...
llvm-svn: 48673
2008-03-22 01:55:50 +00:00
Chris Lattner
f5d41c67af
This is a partially implemented and currently disabled start of a store
...
merging optimization. Nothing to see here, hopefully more later :)
llvm-svn: 48670
2008-03-22 00:31:52 +00:00
Chris Lattner
97d496c182
Teach the rewriter how to respect the -o option.
...
llvm-svn: 48669
2008-03-22 00:08:40 +00:00
Chris Lattner
4f55259237
fix this test.
...
llvm-svn: 48668
2008-03-22 00:07:50 +00:00
Dan Gohman
9988569af8
Don't include <map> in Pass.h, which doesn't need it. This requires
...
adding <map> to many files that actually do need it.
llvm-svn: 48667
2008-03-21 23:51:57 +00:00
Dan Gohman
026eed69e7
Avoid calling array_endof in a static initializer, as it incurs
...
dynamic initialization.
llvm-svn: 48666
2008-03-21 23:44:21 +00:00
Dan Gohman
5a6ac79738
Specialize FORCE_DEFINING_FILE_TO_BE_LINKED using a GCC trick
...
to avoid using constructor calls for static objects. This reduces
the number of objects requiring static constructors in a typical
LLVM build by around 20%.
llvm-svn: 48665
2008-03-21 23:38:23 +00:00
Dan Gohman
30e44a4b40
Fix -view-sunit-dags to support cross-rc-copy nodes.
...
llvm-svn: 48664
2008-03-21 22:51:06 +00:00
Gabor Greif
a6c5b38c4a
a happier version of happiness
...
llvm-svn: 48663
2008-03-21 22:17:07 +00:00
Chris Lattner
804209d17c
the size of a smallvector shouldn't be part of the interface to these methods.
...
llvm-svn: 48662
2008-03-21 22:01:16 +00:00
Chris Lattner
beb216da0a
make gvn marginally faster by reallocating the lastSeenLoad map for
...
each basic block.
llvm-svn: 48660
2008-03-21 21:33:23 +00:00
Ted Kremenek
181f72369f
Rename "Nodify" to "MakeNode"
...
llvm-svn: 48659
2008-03-21 21:30:14 +00:00
Chris Lattner
2876a645c3
Minor cleanups and shrinkification.
...
llvm-svn: 48658
2008-03-21 21:14:38 +00:00
Dan Gohman
a25dde6fee
Handle getresult instructions in different basic blocks
...
from their aggregate operands by moving the getresult
instructions.
llvm-svn: 48657
2008-03-21 21:01:32 +00:00
Chris Lattner
c55b444a8f
Restore this assert now that the livevar bug is fixed.
...
This verifies kill info for "ret" fp operands is right.
llvm-svn: 48656
2008-03-21 20:41:27 +00:00
Duncan Sands
e37b9c0d34
Testcase for PR2160.
...
llvm-svn: 48655
2008-03-21 20:22:11 +00:00
Evan Cheng
8c19af1b7e
A couple of kill marker maintainence bug.
...
llvm-svn: 48653
2008-03-21 19:09:30 +00:00
Chris Lattner
fb7c88de77
clean up and fix the call section.
...
llvm-svn: 48651
2008-03-21 17:24:17 +00:00
Chris Lattner
141b613b32
cleanups for the getresult section.
...
llvm-svn: 48650
2008-03-21 17:20:51 +00:00
Andrew Lenharth
74d154ce57
FunctionExtractorPass has been superceded by GVExtractorPass
...
llvm-svn: 48648
2008-03-21 16:46:53 +00:00
Duncan Sands
dec270a6db
Make it possible to get an empty struct using
...
the new StructType::get method. The second NULL
is to pacify the gcc warning mechanism. This
patch compiles but is otherwise untested.
llvm-svn: 48645
2008-03-21 15:53:17 +00:00
Duncan Sands
d97eea372a
Introduce a new node for holding call argument
...
flags. This is needed by the new legalize types
infrastructure which wants to expand the 64 bit
constants previously used to hold the flags on
32 bit machines. There are two functional changes:
(1) in LowerArguments, if a parameter has the zext
attribute set then that is marked in the flags;
before it was being ignored; (2) PPC had some bogus
code for handling two word arguments when using the
ELF 32 ABI, which was hard to convert because of
the bogusness. As suggested by the original author
(Nicolas Geoffray), I've disabled it for the moment.
Tested with "make check" and the Ada ACATS testsuite.
llvm-svn: 48640
2008-03-21 09:14:45 +00:00
Duncan Sands
c9e09a0588
Fix the build for gcc-4.2.
...
llvm-svn: 48639
2008-03-21 08:32:17 +00:00
Sam Bishop
f4303edfa3
Only invoke the preprocessor; it's the only thing being tested. Also, check
...
the output to make sure that the macros and comments are being treated as such.
llvm-svn: 48638
2008-03-21 08:05:55 +00:00
Sam Bishop
27654983dc
Plug a memory leak in the "this macro expands into a single trivially-
...
expanded token" case.
llvm-svn: 48637
2008-03-21 07:13:02 +00:00
Sam Bishop
558447416d
Use the -E option when invoking clang. Only the preprocessor is
...
required to perform this test.
llvm-svn: 48636
2008-03-21 07:02:04 +00:00