1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 20:12:56 +02:00
Commit Graph

30604 Commits

Author SHA1 Message Date
Evan Cheng
7ef8db2fb5 Implement inline asm modifier c.
llvm-svn: 35035
2007-03-08 22:42:46 +00:00
Chris Lattner
cec3666863 upgrade this testcase, add test for fp immediate to memory operand.
llvm-svn: 35034
2007-03-08 22:33:06 +00:00
Chris Lattner
dfe5b3bd1d implement support for floating point constants used as inline asm memory operands.
llvm-svn: 35033
2007-03-08 22:29:47 +00:00
Bill Wendling
4fbc327c54 Add MMX arithmetic testcase.
llvm-svn: 35032
2007-03-08 22:14:51 +00:00
Bill Wendling
5fef3fd7e7 Added "padd*" support for MMX. Added MMX move stuff to X86InstrInfo so that
moves, loads, etc. are recognized.

llvm-svn: 35031
2007-03-08 22:09:11 +00:00
Evan Cheng
6445ce2423 Fix a typo.
llvm-svn: 35030
2007-03-08 21:59:30 +00:00
Evan Cheng
511c8f6a24 Fix test case.
llvm-svn: 35029
2007-03-08 19:27:32 +00:00
Devang Patel
94228897e7 Speed Up Pass Manager.
- Check Immutableness before searching PreservedSet.
- Avoid unnecessary traversal while setting Last User.

llvm-svn: 35028
2007-03-08 19:05:01 +00:00
Zhou Sheng
acc59870f7 Fix a bug in function ComputeMaskedBits().
llvm-svn: 35027
2007-03-08 15:15:18 +00:00
Evan Cheng
7d528d089c Putting more constants which do not contain relocations into .literal{4|8|16}
llvm-svn: 35026
2007-03-08 08:31:54 +00:00
Chris Lattner
7e516796f6 make this fail even in non-assert builds.
llvm-svn: 35025
2007-03-08 07:07:03 +00:00
Chris Lattner
66843dbef9 This appears correct, enable it so we can see perf changes on testers
llvm-svn: 35024
2007-03-08 07:03:55 +00:00
Chris Lattner
049f21257d Second half of PR1226. This is currently still disabled, until I have a chance to
do the correctness/performance analysis testing.

llvm-svn: 35023
2007-03-08 06:36:54 +00:00
Zhou Sheng
37cb2e2d53 Fix a bug in APIntified ComputeMaskedBits().
llvm-svn: 35022
2007-03-08 05:42:00 +00:00
Evan Cheng
393fd04eb4 Change register allocation order to Dale's suggestion.
llvm-svn: 35021
2007-03-08 02:56:40 +00:00
Evan Cheng
2c3e4ab3a6 Bug fix. Not advancing the register scavenger iterator correctly.
llvm-svn: 35020
2007-03-08 02:55:08 +00:00
Reid Spencer
c3f0724204 For PR1205:
Provide an APIntified version of MaskedValueIsZero. This will (temporarily)
cause a "defined but not used" message from the compiler. It will be used
in the next patch in this series.

Patch by Sheng Zhou.

llvm-svn: 35019
2007-03-08 01:52:58 +00:00
Reid Spencer
6a924d1a1d For PR1205:
Add a new ComputeMaskedBits function that is APIntified. We'll slowly
convert things over to use this version. When its all done, we'll remove
the existing version.

llvm-svn: 35018
2007-03-08 01:46:38 +00:00
Evan Cheng
c79408b032 For Darwin, put constant data into .const, .const_data, .literal{4|8|16}
sections.

llvm-svn: 35017
2007-03-08 01:25:25 +00:00
Evan Cheng
14b63d89c1 Put constant data to .const, .const_data, .literal{4|8|16} sections.
llvm-svn: 35016
2007-03-08 01:07:07 +00:00
Evan Cheng
6bf2f3665e Add ReadOnlySection directive.
llvm-svn: 35015
2007-03-08 01:00:38 +00:00
Evan Cheng
7513c95267 Added ContainsRelocations() to check if a constant might only be resolvable at load time.
llvm-svn: 35014
2007-03-08 00:59:12 +00:00
Evan Cheng
51c3e53eb7 Only safe to use a call-clobbered or spilled callee-saved register as scratch register.
llvm-svn: 35010
2007-03-07 20:30:36 +00:00
Bill Wendling
8f49ba1000 Remove useless pattern fragments.
llvm-svn: 35009
2007-03-07 18:23:09 +00:00
Anton Korobeynikov
85d6c1ebad Refactoring of formal parameter flags. Enable properly use of
zext/sext/aext stuff.

llvm-svn: 35008
2007-03-07 16:25:09 +00:00
Anton Korobeynikov
a24b167902 Cleanup: make SetCounter an instance variable
llvm-svn: 35007
2007-03-07 08:25:02 +00:00
Evan Cheng
5196ecbf5c New test case.
llvm-svn: 35006
2007-03-07 08:12:39 +00:00
Evan Cheng
2f55532e84 Avoid combining indexed load further.
llvm-svn: 35005
2007-03-07 08:07:03 +00:00
Evan Cheng
d4fb00bb6b Add a utility function to test whether a load is unindexed.
llvm-svn: 35004
2007-03-07 08:04:41 +00:00
Devang Patel
6a56e3c1a0 Now IndVarSimplify is a LoopPass.
llvm-svn: 35003
2007-03-07 06:39:01 +00:00
Bill Wendling
3c201ddd02 Properly support v8i8 and v4i16 types. It now converts them to v2i32 for
load and stores.

llvm-svn: 35002
2007-03-07 05:43:18 +00:00
Devang Patel
16107bb71b Now LICM is a LoopPass.
llvm-svn: 35001
2007-03-07 04:41:30 +00:00
Anton Korobeynikov
090c2d50ea Fix DWARF debugging information on x86/Linux and (hopefully)
Mingw32/Cygwin targets. This fixes PR978

llvm-svn: 35000
2007-03-07 02:47:57 +00:00
Evan Cheng
493960579f ARM always use register scavenger. No longer reserves R12.
llvm-svn: 34999
2007-03-07 02:46:23 +00:00
Evan Cheng
4e01b11512 Fix some brittle code. Watch out for cases where register scavenger is pointing to deleted instructions.
llvm-svn: 34998
2007-03-07 02:38:05 +00:00
Evan Cheng
4161981d63 Add skipTo to set internal iterator. Useful when pointed to instruction is deleted.
llvm-svn: 34997
2007-03-07 02:36:16 +00:00
Devang Patel
3a24891f80 Now LoopUnroll is a LoopPass.
llvm-svn: 34996
2007-03-07 01:38:05 +00:00
Reid Spencer
9558369d33 Fix the pattern.
llvm-svn: 34994
2007-03-07 00:39:11 +00:00
Reid Spencer
61cd993904 Make this test more reliable across platforms.
llvm-svn: 34993
2007-03-07 00:32:12 +00:00
Devang Patel
c35610b9f9 Now LoopUnswitch is a LoopPass.
llvm-svn: 34992
2007-03-07 00:26:10 +00:00
Evan Cheng
7dccc59e5b New test case.
llvm-svn: 34991
2007-03-07 00:13:48 +00:00
Evan Cheng
9839628fd1 Fix one more Thumb eliminateFrameIndex bug.
llvm-svn: 34990
2007-03-07 00:12:18 +00:00
Reid Spencer
012677ae92 Fix all of last night's JIT failures in Prolangs-C++ by finishing the
implementation of getConstantValue().

llvm-svn: 34988
2007-03-06 22:23:15 +00:00
Evan Cheng
63ffd3e17f Register scavenging is now on by default for ARM.
llvm-svn: 34987
2007-03-06 22:02:53 +00:00
Evan Cheng
6453ad00d2 Make load / store optimizer use register scavenger.
llvm-svn: 34986
2007-03-06 21:59:20 +00:00
Evan Cheng
49e8bd5e17 Minor bug fix.
llvm-svn: 34985
2007-03-06 21:58:15 +00:00
Devang Patel
0b82378a28 Now LoopStrengthReduce is a LoopPass.
llvm-svn: 34984
2007-03-06 21:14:09 +00:00
Chris Lattner
cf70993bba big endian 32-bit systems (e.g. ppc32) want to return the high reg first, not
the lo-reg first.  This is fallout from my ppc calling conv change yesterday,
it fixes test/ExecutionEngine/2003-05-06-LivenessClobber.llx

llvm-svn: 34983
2007-03-06 20:01:06 +00:00
Devang Patel
bee9c51214 Insert loop into LQ before visiting children.
llvm-svn: 34982
2007-03-06 19:50:49 +00:00
Anton Korobeynikov
42d0886ca0 Small eye-candy: use asciz directive everywhere, where possible.
llvm-svn: 34981
2007-03-06 19:25:02 +00:00