Commit Graph

25308 Commits

Author SHA1 Message Date
Jim Laskey f32058a2b7 References need to be section relative.
llvm-svn: 28858
2006-06-19 15:48:00 +00:00
Andrew Lenharth 4335b3486a 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 90cd68acc6 Handle versioning of compile unit.
llvm-svn: 28855
2006-06-19 12:54:15 +00:00
Rafael Espindola a88966fd5e 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 7a708989df Constant fold sqrtf
llvm-svn: 28853
2006-06-17 18:17:52 +00:00
Chris Lattner 0b2652027b 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 0c9be0a2be Clean up
llvm-svn: 28851
2006-06-17 01:42:20 +00:00
Chris Lattner 053fb9319d 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 fefc14d891 new testcase that crashes indvars
llvm-svn: 28849
2006-06-17 01:01:30 +00:00
Evan Cheng a54b9643aa A new entry.
llvm-svn: 28848
2006-06-17 00:45:49 +00:00
Chris Lattner 49cadab385 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 8dd21436db Forgot operands were hard coded for compile unit.
llvm-svn: 28846
2006-06-16 23:36:12 +00:00
Jim Laskey 6b6e369e8a Include information of svn repository for llvm-gcc4.
llvm-svn: 28845
2006-06-16 23:34:49 +00:00
Jim Laskey 34ea26a8b9 Include information about svn repository for llvm-gcc4.
llvm-svn: 28844
2006-06-16 23:20:21 +00:00
Evan Cheng d2e9a67cd9 Later models likely to have Yonah like attributes.
llvm-svn: 28843
2006-06-16 21:58:49 +00:00
Chris Lattner 64e85f309f 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 638ee4ee15 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 e8fe5e2bf4 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 a5190ae7a9 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 b429983988 Split 64-bit instructions out into a separate .td file
llvm-svn: 28838
2006-06-16 20:22:01 +00:00
Chris Lattner 61d703183e Force 64-bit register availability in 64-bit mode. For real.
llvm-svn: 28837
2006-06-16 20:05:06 +00:00
Chris Lattner c9ede19a8e Document known xcode 2.3 issue
llvm-svn: 28836
2006-06-16 19:53:39 +00:00
Chris Lattner a7d9db2fa5 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 8a417a2fde Add missing casts. This fixed some regressions.
llvm-svn: 28834
2006-06-16 18:37:15 +00:00
Chris Lattner 4b464768d1 Improve a comment.
llvm-svn: 28833
2006-06-16 18:25:06 +00:00
Chris Lattner 6c79005b0d Simplify TargetData ctor call
llvm-svn: 28832
2006-06-16 18:24:38 +00:00
Chris Lattner 16cf81306e 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 f3b5b92e58 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 e16e1cbf3a 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 7f043b52ff 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 e796266d58 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 91f228b291 Simplify interpreter construction.
llvm-svn: 28826
2006-06-16 18:08:38 +00:00
Chris Lattner 16682fff2b 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 a35f306740 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 29052c849f apple's compiler works too
llvm-svn: 28823
2006-06-16 17:20:33 +00:00
Jim Laskey c1066841bd PR# not associated with XFAIL
llvm-svn: 28822
2006-06-16 16:57:43 +00:00
Jim Laskey fd4b2e234a debug info is alive again
llvm-svn: 28821
2006-06-16 16:50:24 +00:00
Chris Lattner 9cce4a54aa This test isn't implemented yet
llvm-svn: 28820
2006-06-16 16:36:50 +00:00
Andrew Lenharth 0686842037 Add a error message to cbu to match bu
llvm-svn: 28819
2006-06-16 14:43:36 +00:00
Andrew Lenharth fbee2e56cf move header
llvm-svn: 28818
2006-06-16 14:33:53 +00:00
Jim Laskey b6a6f7971f add decimal form of LLVMDebugVersion
llvm-svn: 28817
2006-06-16 13:45:38 +00:00
Jim Laskey b2ff2d481e 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 1fc4025a9c 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 f2ea587aa2 Simplify fprintf(file, "%s", str) to fputs(str, file).
llvm-svn: 28814
2006-06-16 04:52:30 +00:00
Chris Lattner 0c4aa14deb First baby step towards ppc64 support. This adds a new -march=ppc64 backend
that is currently just like ppc32 :)

llvm-svn: 28813
2006-06-16 01:37:27 +00:00
Chris Lattner 44ab8aefa6 Fix Regression/Linker/2006-06-15-GlobalVarAnment.ll
llvm-svn: 28812
2006-06-16 01:24:04 +00:00
Chris Lattner e9ad44e8b1 New testcase, the linker is not merging alignments right.
llvm-svn: 28811
2006-06-16 01:20:58 +00:00
Reid Spencer 57e8e38a6f Only print the stack trace if it was requested. Previously, any call into
the Signals module that registered the handlers would cause the stack trace
to be generated. Now, you must explicitly call PrintStackTraceOnErrorSignal
in order for that to happen.

llvm-svn: 28810
2006-06-16 00:00:57 +00:00
Chris Lattner 4ff6c1646f Teach the local allocator to know that live-in values (e.g. arguments) are
live at function entry.  This prevents it from using arg registers for other
purposes before the arguments are used.

llvm-svn: 28809
2006-06-15 22:21:53 +00:00
Chris Lattner cb29586ce4 Add a note that Nate noticed.
llvm-svn: 28808
2006-06-15 21:33:31 +00:00