1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00
Commit Graph

25223 Commits

Author SHA1 Message Date
Chris Lattner
2e64872117 Remove some ugly now-redundant casts.
llvm-svn: 28864
2006-06-20 00:25:29 +00:00
Chris Lattner
25273f71bf Make sure to use the result of the pattern to infer the result type of the
instruction, and the result type of the instruction to refine the pattern.
This allows us to write things like this:

def : Pat<(v2i64 (bitconvert (v16i8 VR128:$src))), (v2i64 VR128:$src)>;

as:
def : Pat<(v2i64 (bitconvert (v16i8 VR128:$src))), (VR128:$src)>

and fixes a ppc64 issue.

llvm-svn: 28863
2006-06-20 00:18:02 +00:00
Chris Lattner
fbea064e90 Fix some mismatched type constraints
llvm-svn: 28862
2006-06-20 00:12:37 +00:00
Jim Laskey
e996378867 References need to be section relative.
llvm-svn: 28861
2006-06-19 19:49:42 +00:00
Evan Cheng
98d508af83 Minor clean up.
llvm-svn: 28860
2006-06-19 19:25:30 +00:00
Andrew Lenharth
f0ecdbe7ef Do partial inlining in BU. This resolves more call sites. Also add options to merge in globals during recursion and to back annotate DSNodes when function pointers are resolved. This makes PA work for a whole lot more things (unresolved call sites being what has been killing various DSA based passes)
llvm-svn: 28859
2006-06-19 18:23:36 +00:00
Jim Laskey
16fcd6389e References need to be section relative.
llvm-svn: 28858
2006-06-19 15:48:00 +00:00
Andrew Lenharth
3ab1711306 Fix a bug, don't drop indirect call sites, especially if there is nothing known about them yet, and restore a simple version of a removed function
llvm-svn: 28857
2006-06-19 15:42:47 +00:00
Jim Laskey
005825407f Handle versioning of compile unit.
llvm-svn: 28855
2006-06-19 12:54:15 +00:00
Rafael Espindola
14a59f5b6e initial implementation of ARMRegisterInfo::eliminateFrameIndex
fixes test/Regression/CodeGen/ARM/ret_arg5.ll

llvm-svn: 28854
2006-06-18 00:08:07 +00:00
Chris Lattner
9d028c26c8 Constant fold sqrtf
llvm-svn: 28853
2006-06-17 18:17:52 +00:00
Chris Lattner
9d6d1e0236 Just a minor tweak so you can run things like:
TestRunner.sh Foo/Bar/test.ll

instead of just

TestRunner.sh test.ll

which is convenient in conjunction with find.

llvm-svn: 28852
2006-06-17 08:06:33 +00:00
Evan Cheng
6909286861 Clean up
llvm-svn: 28851
2006-06-17 01:42:20 +00:00
Chris Lattner
25b04b4249 Fix IndVarsSimplify/2006-06-16-Indvar-LCSSA-Crash.ll, a case where a
"LCSSA" phi node causes indvars to break dominance properties.  This fixes
causes indvars to avoid inserting aggressive code in this case, instead
indvars should be fixed to be more aggressive in the face of lcssa phi's.

llvm-svn: 28850
2006-06-17 01:02:31 +00:00
Chris Lattner
9e284be377 new testcase that crashes indvars
llvm-svn: 28849
2006-06-17 01:01:30 +00:00
Evan Cheng
e3b8db6dda A new entry.
llvm-svn: 28848
2006-06-17 00:45:49 +00:00
Chris Lattner
d817b32a8e Implement the getPointerRegClass method, which is required for the ptr_rc
magic to work.

llvm-svn: 28847
2006-06-17 00:01:04 +00:00
Jim Laskey
e62ae62e2b Forgot operands were hard coded for compile unit.
llvm-svn: 28846
2006-06-16 23:36:12 +00:00
Jim Laskey
42d7c4019e Include information of svn repository for llvm-gcc4.
llvm-svn: 28845
2006-06-16 23:34:49 +00:00
Jim Laskey
00764bf1fa Include information about svn repository for llvm-gcc4.
llvm-svn: 28844
2006-06-16 23:20:21 +00:00
Evan Cheng
78e6cefad9 Later models likely to have Yonah like attributes.
llvm-svn: 28843
2006-06-16 21:58:49 +00:00
Chris Lattner
d5d1b926c5 Do not hardcode random paths into the makefile. Make the user specify the
SDK to use when building "universal" on Mac OS/X, if they want to use a
specific one.

llvm-svn: 28842
2006-06-16 21:47:59 +00:00
Chris Lattner
89a0d10812 Upgrade some load/store instructions to use the proper addressing mode stuff.
llvm-svn: 28841
2006-06-16 21:29:41 +00:00
Chris Lattner
163da7cdcb In 64-bit mode, addr mode operands use G8RC instead of GPRC.
llvm-svn: 28840
2006-06-16 21:29:03 +00:00
Chris Lattner
81845946ff fix some assumptions that pointers can only be 32-bits. With this, we can
now compile:

static unsigned long X;
void test1() {
  X = 0;
}

into:

_test1:
        lis r2, ha16(_X)
        li r3, 0
        stw r3, lo16(_X)(r2)
        blr

Totally amazing :)

llvm-svn: 28839
2006-06-16 21:01:35 +00:00
Chris Lattner
cb294464e7 Split 64-bit instructions out into a separate .td file
llvm-svn: 28838
2006-06-16 20:22:01 +00:00
Chris Lattner
59947dda25 Force 64-bit register availability in 64-bit mode. For real.
llvm-svn: 28837
2006-06-16 20:05:06 +00:00
Chris Lattner
d1570e84a1 Document known xcode 2.3 issue
llvm-svn: 28836
2006-06-16 19:53:39 +00:00
Chris Lattner
126464b577 Remove the -darwin and -aix llc options, inferring darwinism and aixism from
the target triple & subtarget info.  woo.

llvm-svn: 28835
2006-06-16 18:50:48 +00:00
Evan Cheng
884b3a29da Add missing casts. This fixed some regressions.
llvm-svn: 28834
2006-06-16 18:37:15 +00:00
Chris Lattner
dfcd07cc4c Improve a comment.
llvm-svn: 28833
2006-06-16 18:25:06 +00:00
Chris Lattner
5a1f56fc2a Simplify TargetData ctor call
llvm-svn: 28832
2006-06-16 18:24:38 +00:00
Chris Lattner
b5733272c5 Don't pass target name into TargetData anymore, it is never used or needed.
llvm-svn: 28831
2006-06-16 18:23:49 +00:00
Chris Lattner
6a9ec7e80e Don't pass target name into TargetData anymore, it is never used or needed.
Remove explicit casts to std::string now that there is no overload resolution
issues in the TargetData ctors.

llvm-svn: 28830
2006-06-16 18:22:52 +00:00
Chris Lattner
c6a5850ceb Simplify the targetdata ctor by not passing in a "targetname" which is always
ignored.

llvm-svn: 28829
2006-06-16 18:21:53 +00:00
Chris Lattner
9fcdb0d7e5 Remove ctor with each piece specifyable (which causes overload ambiguities),
add a new init method.

llvm-svn: 28828
2006-06-16 18:11:26 +00:00
Chris Lattner
4a8f3c456a Only count instructions as code size, not constant pools and other per-function stuff.
llvm-svn: 28827
2006-06-16 18:09:26 +00:00
Chris Lattner
ac373d311b Simplify interpreter construction.
llvm-svn: 28826
2006-06-16 18:08:38 +00:00
Chris Lattner
19680a4928 Document the subtarget features better, make sure that 64-bit mode, 64-bit
support, and 64-bit register use are all consistent with each other.

Add a new "IsPPC" feature, to distinguish ppc32 vs ppc64 targets, use this
to configure TargetData differently.  This not makes ppc64 blow up on lots
of stuff :)

llvm-svn: 28825
2006-06-16 17:50:12 +00:00
Chris Lattner
fa884ac11b Rename some subtarget features. A CPU now can *have* 64-bit instructions,
can in 32-bit mode we can choose to optionally *use* 64-bit registers.

llvm-svn: 28824
2006-06-16 17:34:12 +00:00
Chris Lattner
2e826d9b9e apple's compiler works too
llvm-svn: 28823
2006-06-16 17:20:33 +00:00
Jim Laskey
a5e841799d PR# not associated with XFAIL
llvm-svn: 28822
2006-06-16 16:57:43 +00:00
Jim Laskey
86cc6fd882 debug info is alive again
llvm-svn: 28821
2006-06-16 16:50:24 +00:00
Chris Lattner
d64f3aac5e This test isn't implemented yet
llvm-svn: 28820
2006-06-16 16:36:50 +00:00
Andrew Lenharth
9f4587fa50 Add a error message to cbu to match bu
llvm-svn: 28819
2006-06-16 14:43:36 +00:00
Andrew Lenharth
71d1cfa5c4 move header
llvm-svn: 28818
2006-06-16 14:33:53 +00:00
Jim Laskey
4dd34cc4a2 add decimal form of LLVMDebugVersion
llvm-svn: 28817
2006-06-16 13:45:38 +00:00
Jim Laskey
120281ddcf 1. Revise vector debug support.
2. Update docs for vector debug support and new version control.

3. Simplify serialization of DebugDescInfo subclasses.

llvm-svn: 28816
2006-06-16 13:14:03 +00:00
Evan Cheng
763d7462d5 More libcall transformations:
printf("%s\n", str) -> puts(str)
printf("%c", c) -> putchar(c)
Also fixed fprintf(file, "%c", c) -> fputc(c, file)

llvm-svn: 28815
2006-06-16 08:36:35 +00:00
Evan Cheng
bde00a97a7 Simplify fprintf(file, "%s", str) to fputs(str, file).
llvm-svn: 28814
2006-06-16 04:52:30 +00:00