1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
Commit Graph

38542 Commits

Author SHA1 Message Date
Chris Lattner
9f4f2444ea add a micro optzn.
llvm-svn: 50681
2008-05-05 23:19:45 +00:00
Mon P Wang
34b3f18a70 Improved generated code for atomic operators
llvm-svn: 50677
2008-05-05 22:56:23 +00:00
Evan Cheng
44d49e72a1 Code clean up. No functionality change.
llvm-svn: 50675
2008-05-05 22:12:23 +00:00
Bill Wendling
5234187c50 Fix: Some classes were derived from a class in an anonymous namespace, but they
themselves weren't in the anonymous namespace.

llvm-svn: 50673
2008-05-05 21:37:59 +00:00
Bill Wendling
9facb00af6 Using "unsigned" was masking the "size_t" version of this method.
llvm-svn: 50668
2008-05-05 20:51:58 +00:00
Chris Lattner
50d16c2939 Fix a crash when threading a block that includes a MRV call result.
DemoteRegToStack doesn't work with MRVs yet, because it relies on the
ability to load/store things.

This fixes PR2285.

llvm-svn: 50667
2008-05-05 20:21:22 +00:00
Devang Patel
0206af99dc Remove unused function.
llvm-svn: 50664
2008-05-05 19:44:16 +00:00
Mon P Wang
84a269e023 Added addition atomic instrinsics and, or, xor, min, and max.
llvm-svn: 50663
2008-05-05 19:05:59 +00:00
Dan Gohman
4a674dc536 Fix IsLinux being uninitialized on non-Linux targets.
llvm-svn: 50660
2008-05-05 18:43:07 +00:00
Evan Cheng
d9353009b7 Fix more -Wshorten-64-to-32 warnings.
llvm-svn: 50659
2008-05-05 18:30:58 +00:00
Chris Lattner
ca94848f66 no need for eh info
llvm-svn: 50658
2008-05-05 18:24:33 +00:00
Evan Cheng
281654e4fb Fix 80 column violations.
llvm-svn: 50655
2008-05-05 17:41:03 +00:00
Anton Korobeynikov
12c48230f9 Fix 80col violation
llvm-svn: 50654
2008-05-05 17:08:59 +00:00
Dan Gohman
3dfc43343b Fix a bug in the ELF writer that caused it to produce malformed
ELF headers. The ELF writer still isn't generally usable though.

llvm-svn: 50652
2008-05-05 16:48:32 +00:00
Dan Gohman
8ee7bf053e Use a dedicated IsLinux flag instead of an ELFLinux TargetType.
llvm-svn: 50649
2008-05-05 16:11:31 +00:00
Dan Gohman
c860d9c77c Add AsmPrinter support for emitting a directive to declare that
the code being generated does not require an executable stack.

Also, add target-specific code to make use of this on Linux
on x86. 

llvm-svn: 50634
2008-05-05 00:28:39 +00:00
Anton Korobeynikov
04c974b1b2 Add General Dynamic TLS model for X86-64. Some parts looks really ugly (look for tlsaddr pattern),
but should work. Work is in progress, more models will follow

llvm-svn: 50630
2008-05-04 21:36:32 +00:00
Owen Anderson
611b415d12 Fix PR1098 by correcting the postdominators analysis.
Patch by Florian Brandner.

llvm-svn: 50628
2008-05-04 21:07:35 +00:00
Chris Lattner
9b05ba1b41 remove obsolete method.
llvm-svn: 50622
2008-05-04 18:14:55 +00:00
Chris Lattner
57a81e6804 regenerate
llvm-svn: 50621
2008-05-04 17:18:47 +00:00
Gordon Henriksen
6f33fd36ab Use (void) instead of () in C code.
llvm-svn: 50620
2008-05-04 12:55:34 +00:00
Evan Cheng
a7747df955 Select vector shift with non-immediate i32 shift amount operand by first moving the operand into the right register.
llvm-svn: 50619
2008-05-04 09:15:50 +00:00
Torok Edwin
a68816f876 processStore may delete the instruction, avoid
using dyn_cast<> on already freed memory.

llvm-svn: 50618
2008-05-04 08:51:25 +00:00
Anton Korobeynikov
14d085975f Remove entries from here also
llvm-svn: 50616
2008-05-04 06:23:44 +00:00
Anton Korobeynikov
67c3a24fc6 Drop llvmc also, it will be replaced by shiny new llvmc2
llvm-svn: 50615
2008-05-04 06:19:55 +00:00
Anton Korobeynikov
7a74dc55b7 Drop llvm2cpp, it's now a llc target
llvm-svn: 50614
2008-05-04 06:16:50 +00:00
Torok Edwin
d016bb2685 Implement destructor for PostDominatorTree to eliminate a memory leak.
llvm-svn: 50607
2008-05-03 20:25:26 +00:00
Devang Patel
e8518dd7ff Handle multiple return values.
llvm-svn: 50604
2008-05-03 01:12:15 +00:00
Ted Kremenek
aff3b5126a Implement operator-> for ImmutableMap iterators.
llvm-svn: 50603
2008-05-03 01:05:46 +00:00
Evan Cheng
c1c2adbfc6 Add separate intrinsics for MMX / SSE shifts with i32 integer operands. This allow us to simplify the horribly complicated matching code.
llvm-svn: 50601
2008-05-03 00:52:09 +00:00
Devang Patel
b3112b4417 Do not sink getresult.
llvm-svn: 50600
2008-05-03 00:36:30 +00:00
Devang Patel
4b2359feec Add assert.
llvm-svn: 50596
2008-05-02 22:13:33 +00:00
Chris Lattner
5346b6b0a7 verify builtin optimization works like gcc.
llvm-svn: 50594
2008-05-02 22:07:34 +00:00
Chris Lattner
7b9b1fe01a move libcalls to the same place llvm-gcc has it.
llvm-svn: 50593
2008-05-02 22:05:06 +00:00
Dan Gohman
27156711ef Fix a mistake in the computation of leading zeros for udiv.
llvm-svn: 50591
2008-05-02 21:30:02 +00:00
Evan Cheng
c2d34f03bf Suppress -Wshorten-64-to-32 warnings for 64-bit hosts.
llvm-svn: 50590
2008-05-02 21:15:08 +00:00
Chris Lattner
96467cc665 strength reduce exp2 into ldexp, rdar://5852514
llvm-svn: 50586
2008-05-02 18:43:35 +00:00
Chris Lattner
e45796cb56 add a FIXME so we remember to eventually remove this code.
llvm-svn: 50582
2008-05-02 17:18:31 +00:00
Evan Cheng
90b9027f68 Undo r50574. We are already ensuring the folded load address is 16-byte aligned.
llvm-svn: 50578
2008-05-02 17:01:01 +00:00
Chris Lattner
8cc3e89b87 specify an arch for non-x86 hosts.
llvm-svn: 50576
2008-05-02 15:11:58 +00:00
Evan Cheng
583a346ec6 80 column violation.
llvm-svn: 50575
2008-05-02 07:53:32 +00:00
Evan Cheng
862e3a147c Not safe folding a load + FsXORPSrr into FsXORPSrm. It's loading a FR64 value but the load folding variant expects a 16-byte aligned address.
llvm-svn: 50574
2008-05-02 07:50:58 +00:00
Bill Wendling
277f2a205d Porting r50563 from Tak to mainline.
llvm-svn: 50564
2008-05-02 00:43:20 +00:00
Dan Gohman
4de7fe7ddc Fix a typo in a comment.
llvm-svn: 50562
2008-05-02 00:05:03 +00:00
Dan Gohman
a55bbcacce Use push_back(...) instead of resize(1, ...), per review feedback.
llvm-svn: 50561
2008-05-02 00:03:54 +00:00
Dan Gohman
04e2b94842 Update old-style syntax in some "not grep" tests.
llvm-svn: 50560
2008-05-01 23:50:07 +00:00
Dan Gohman
148b1904fe Fix uninitialized uses of the FPC variable.
llvm-svn: 50558
2008-05-01 23:40:44 +00:00
Dale Johannesen
4ab8b00dfa New test for bug fixed in 50545.
llvm-svn: 50548
2008-05-01 22:50:14 +00:00
Dale Johannesen
d758175889 Don't try to create PHIs of struct types. Fallout
from x86-64 calling convention work.

llvm-svn: 50545
2008-05-01 22:27:44 +00:00
Dan Gohman
793c9fed45 Fix an overaggressive SimplifyDemandedBits optimization on urem. This
fixes the 254.gap regression on x86 and the 403.gcc regression on x86-64.

llvm-svn: 50537
2008-05-01 19:13:24 +00:00