1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 03:53:04 +02:00
Commit Graph

40627 Commits

Author SHA1 Message Date
Chris Lattner
48d4303630 remove reference to really really old tree
llvm-svn: 55001
2008-08-19 20:17:48 +00:00
Owen Anderson
b110ebd37d The fast-path still needs to set kill markers and spill/restore points as appropriate.
With this patch, all of MultiSource/Applications and all of SPEC2000/2006 pass with
the SimpleSpiller and this fast-path enabled.

llvm-svn: 55000
2008-08-19 20:09:52 +00:00
Dale Johannesen
15b76de064 Add support for 8 and 16 bit forms of __sync
builtins on X86.

Change "lock" instructions to be on a separate line.
This is needed to work around a bug in the Darwin
assembler.

llvm-svn: 54999
2008-08-19 18:47:28 +00:00
Dan Gohman
1701d4ef7e 80 columns.
llvm-svn: 54998
2008-08-19 18:07:49 +00:00
Dan Gohman
3a57ef9668 Add a few doxygen comments.
llvm-svn: 54997
2008-08-19 18:06:12 +00:00
Dan Gohman
fbc4410ada Remove an unneeded #include.
llvm-svn: 54996
2008-08-19 17:53:16 +00:00
Gordon Henriksen
b7b9342e24 Delete a dead field.
llvm-svn: 54995
2008-08-19 17:09:26 +00:00
Gordon Henriksen
c4e022d917 [PR2327] Leverage TargetRegisterInfo to compute frame offsets for GC metadata.
llvm-svn: 54994
2008-08-19 17:06:35 +00:00
Nicolas Geoffray
2f08e00f01 Update the JIT exception writer to better mimic the codegen exception writer.
Also skip indirect encoding for platforms that ask for one: we direclty
write an address, not a pointer to the address.

llvm-svn: 54987
2008-08-19 14:48:14 +00:00
Chris Lattner
31ad910029 add a note
llvm-svn: 54985
2008-08-19 06:22:16 +00:00
Chris Lattner
2b6a31501e more cleanups, random methods shouldn't return ostreams.
llvm-svn: 54984
2008-08-19 05:26:17 +00:00
Chris Lattner
8cc806c9be more cleanup, eliminate getLLVMName when printing out
type names at the top of the file.

llvm-svn: 54983
2008-08-19 05:16:28 +00:00
Chris Lattner
b665916d8d random cleanups, factor some printing code for linkage and visibility
llvm-svn: 54982
2008-08-19 05:06:27 +00:00
Chris Lattner
6df4ed8bfd Change WriteTypeSymbolic/WriteAsOperand to return void instead of
an ostream, which is just weird.

Rename SC_DEBUG -> ST_DEBUG

Remove static indentation strangeness from WriteConstantInt.  This makes it 
so that large structs are not broken down and printed on multiple lines.  If
there is demand for this to return, there are better ways to implement this.

llvm-svn: 54981
2008-08-19 04:47:09 +00:00
Chris Lattner
b4cfc1a85e whitespace cleanup
llvm-svn: 54980
2008-08-19 04:45:47 +00:00
Chris Lattner
b5e0d71a07 don't use the result of WriteAsOperand
llvm-svn: 54979
2008-08-19 04:45:19 +00:00
Chris Lattner
9f588f11f4 don't use the result of WriteTypeSymbolic or WriteAsOperand.
llvm-svn: 54978
2008-08-19 04:44:30 +00:00
Chris Lattner
7009680216 Don't use the result of WriteAsOperand or WriteTypeSymbolic.
llvm-svn: 54977
2008-08-19 04:42:37 +00:00
Chris Lattner
50a2b09df9 rearrange code and make more legible.
llvm-svn: 54976
2008-08-19 04:36:02 +00:00
Chris Lattner
de5c9e9be5 put SlotTracker in an anon namespace since it is private.
llvm-svn: 54975
2008-08-19 04:28:07 +00:00
Chris Lattner
c6e031668d Reid had to call this class "slot machine" out of some strange reference
to the gambling device.  Name it something more meaningful.

llvm-svn: 54974
2008-08-19 04:26:57 +00:00
Chris Lattner
f155e446fd add raw_ostream method for emitting an unsigned.
llvm-svn: 54972
2008-08-19 04:23:02 +00:00
Devang Patel
84b8e5630e Compress manpages.
llvm-svn: 54971
2008-08-19 01:17:41 +00:00
Owen Anderson
c68a43890f Make SimpleSpiller respect subregister indices.
llvm-svn: 54968
2008-08-19 01:05:33 +00:00
Chris Lattner
61e771be29 add a note
llvm-svn: 54964
2008-08-19 00:41:02 +00:00
Owen Anderson
94b85d88da Add a flag to enable the fast spilling path.
llvm-svn: 54958
2008-08-19 00:17:30 +00:00
Dan Gohman
6fb94e9d02 Fix the FastISel class' doxygen comment.
llvm-svn: 54957
2008-08-18 23:41:46 +00:00
Owen Anderson
f7f555763d Fix a few more bugs:
1) Assign stack slots to new temporaries.
  2) Don't insert an interval into the return vector more than once.

llvm-svn: 54956
2008-08-18 23:41:04 +00:00
Chris Lattner
843bb4018c remove empty file
llvm-svn: 54950
2008-08-18 21:27:19 +00:00
Owen Anderson
0c22b6d22c Fix several bugs in the new fast-path:
1) Remove an incorrect assertion.
  2) Set the stack slot weight properly.
  3) Resize the VirtRegMap when needed.

llvm-svn: 54949
2008-08-18 21:20:32 +00:00
Anton Korobeynikov
2b4db92a29 Unbreak cpp backend: upgrade output due to change in APInt API
llvm-svn: 54942
2008-08-18 20:03:45 +00:00
Owen Anderson
c25fc6fc35 Clients of addIntervalForSpills expect the added intervals to be returned sorted by starting index.
llvm-svn: 54939
2008-08-18 19:52:22 +00:00
Chris Lattner
467a8dc22e Fix a bug daniel pointed out to me, where asmprinter started
printing ascii code for hex numbers instead of the hex numbers 
themselves.

llvm-svn: 54936
2008-08-18 19:41:26 +00:00
Owen Anderson
751ff13625 Simplify the fast-patch interval spilling by using MachineRegisterInfo::reg_iterator.
llvm-svn: 54930
2008-08-18 18:38:12 +00:00
Bill Wendling
98fb8113e8 XFAIL this test for now.
llvm-svn: 54929
2008-08-18 18:29:54 +00:00
Owen Anderson
39bb486001 Resurrect some ancient code to add spill ranges without attempting folding, remat, or splitting. This code has been updated to current APIs
in so far as it compiles and, in theory, works, but does not take advantage of recent advancements.  For instance, it could be improved by using
MachineRegisterInfo::use_iterator.

llvm-svn: 54924
2008-08-18 18:05:32 +00:00
Nicolas Geoffray
c5c2108727 Register the frame register function when allocating the JIT,
so that lli works out of the box with -enable-eh.

llvm-svn: 54920
2008-08-18 14:53:56 +00:00
Evan Cheng
3b0cb367c0 ARM asm printer can't handle dwarf info yet.
llvm-svn: 54913
2008-08-18 08:52:48 +00:00
Bill Wendling
12569b3697 Don't hoist instructions that have implicit uses or defines. Before, it was
hoisting out some "test" and "cmp" instructions. This was obvious badness.

llvm-svn: 54908
2008-08-18 00:33:49 +00:00
Nick Lewycky
371935de4a Make this comment clearer. Instead of using an ambiguous ~ (not) on an icmp
predicate, swap the order of the operands.

llvm-svn: 54907
2008-08-17 20:02:02 +00:00
Nick Lewycky
30a0ad8900 Consider the case where xor by -1 and xor by 128 have been combined already to
produce an xor by 127.

llvm-svn: 54906
2008-08-17 19:58:24 +00:00
Gordon Henriksen
530bfd5aa7 Update VC++ project.
llvm-svn: 54905
2008-08-17 19:57:31 +00:00
Evan Cheng
5ebbd688ec Didn't mean to change this.
llvm-svn: 54904
2008-08-17 19:25:28 +00:00
Evan Cheng
6534c78383 Fix a (u)comiss intrinsic lowering bug. It was using anyext which can return junk in higher bits. Patch by Nate Begeman.
llvm-svn: 54903
2008-08-17 19:22:34 +00:00
Gordon Henriksen
0a5e079b8e Don't require Registry specializations to define random static variables.
llvm-svn: 54902
2008-08-17 19:08:34 +00:00
Gordon Henriksen
a9ff400fa9 Drop an unnecessary include.
llvm-svn: 54901
2008-08-17 18:54:05 +00:00
Gordon Henriksen
8409ec74bc Regenerate.
llvm-svn: 54900
2008-08-17 18:48:50 +00:00
Gordon Henriksen
2cc861a6c1 Rename some GC classes so that their roll will hopefully be clearer.
In particular, Collector was confusing to implementors. Several
thought that this compile-time class was the place to implement
their runtime GC heap. Of course, it doesn't even exist at runtime.
Specifically, the renames are:

  Collector               -> GCStrategy
  CollectorMetadata       -> GCFunctionInfo
  CollectorModuleMetadata -> GCModuleInfo
  CollectorRegistry       -> GCRegistry
  Function::getCollector  -> getGC (setGC, hasGC, clearGC)

Several accessors and nested types have also been renamed to be
consistent. These changes should be obvious.

llvm-svn: 54899
2008-08-17 18:44:35 +00:00
Cedric Venet
e1e9213f95 Make it compile on VC2005:
- update VC projects.
- Add an overload to llvm::Stream for <<, since std::hex and std::dec have type std::ios_base& (*)(std::ios_base&) in VC++. (templating the function don't work, due to ambiguities)
- add ../ on several include in X86/AsmPrinter/

llvm-svn: 54898
2008-08-17 18:24:26 +00:00
Chris Lattner
aa7b21d49b getLLVMName is only used for types now, which always pass in LocalPrefix. Specialize on it.
llvm-svn: 54897
2008-08-17 17:28:37 +00:00