1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 19:42:54 +02:00
Commit Graph

3384 Commits

Author SHA1 Message Date
Chris Lattner
2594ddf452 Mark llvm.stacksave as only reading memory, this fixes
Regression/Transforms/InstCombine/stacksaverestore.ll

llvm-svn: 26715
2006-03-12 00:04:28 +00:00
Nate Begeman
7c2afcfc02 Fix PR681 by using the standard Lengauer and Tarjan algorithm for dominator
set construction, rather than intersecting various std::sets.  This reduces
the memory usage for the testcase in PR681 from 496 to 26MB of ram on my
darwin system, and reduces the runtime from 32.8 to 0.8 seconds on a
2.5GHz G5.  This also enables future code sharing between Dom and PostDom
now that they share near-identical implementations.

llvm-svn: 26707
2006-03-11 02:20:46 +00:00
Evan Cheng
57c206232d Added a parameter to control whether Constant::getStringValue() would chop
off the result string at the first null terminator.

llvm-svn: 26704
2006-03-10 23:52:03 +00:00
Chris Lattner
f80c0a7188 remove ShouldEmitDebugFunctions, a hack to support llvm-db via the jit
llvm-svn: 26702
2006-03-10 22:49:05 +00:00
Chris Lattner
d6bc58d086 Fix another broken intrinsic.
llvm-svn: 26696
2006-03-10 18:01:03 +00:00
Chris Lattner
228fa5bd76 Fix incorrect definitions of these intrinsics, which broke a bunch of
stuff last night.

llvm-svn: 26694
2006-03-10 17:48:34 +00:00
Chris Lattner
0a64d261e0 Move simple-selector-specific types to the simple selector.
llvm-svn: 26693
2006-03-10 07:51:18 +00:00
Chris Lattner
40b1b16c56 Simplify the interface to the schedulers, to not pass the selected heuristic
in.

llvm-svn: 26691
2006-03-10 07:48:52 +00:00
Chris Lattner
da5f77e3cf Move some simple-sched-specific instance vars to the simple scheduler.
llvm-svn: 26690
2006-03-10 07:42:02 +00:00
Chris Lattner
808cc02983 move some simple scheduler methods into the simple scheduler
llvm-svn: 26688
2006-03-10 07:35:21 +00:00
Chris Lattner
89a5a946f5 Make EmitNode take a SDNode instead of a NodeInfo*
llvm-svn: 26687
2006-03-10 07:28:36 +00:00
Chris Lattner
f1be1182f0 Store VRBase in a map, not in NodeInfo.
llvm-svn: 26685
2006-03-10 07:24:45 +00:00
Chris Lattner
6ef56b998f make some methods protected instead of private
llvm-svn: 26681
2006-03-10 06:30:11 +00:00
Chris Lattner
0f3034a5b6 Fix an incorrect intrinsic description
llvm-svn: 26677
2006-03-10 04:17:06 +00:00
Chris Lattner
e6230f10c3 use the enum list autogen'd from Intrinsics.td
llvm-svn: 26660
2006-03-09 20:03:31 +00:00
Chris Lattner
dc7268f6a3 remove dbg_declare, it's not used yet.
llvm-svn: 26659
2006-03-09 20:02:42 +00:00
Jim Laskey
9249c06683 Forgot this on last check in.
llvm-svn: 26645
2006-03-09 17:30:53 +00:00
Chris Lattner
0b736a0d1e Add a helper method for running static ctors/dtors in the module.
llvm-svn: 26619
2006-03-08 18:42:46 +00:00
Chris Lattner
ad498794f8 add a new helper method
llvm-svn: 26617
2006-03-08 18:38:51 +00:00
Jim Laskey
a1ad999bba Get rid of the multiple copies of getStringValue. Now a Constant:: method.
llvm-svn: 26616
2006-03-08 18:11:07 +00:00
Chris Lattner
3f23d22d3f Change the interface for getting a target HazardRecognizer to be more clean.
llvm-svn: 26608
2006-03-08 04:25:59 +00:00
Jim Laskey
eec3faecde Switch to using a numeric id for anchors.
llvm-svn: 26598
2006-03-07 20:53:47 +00:00
Chris Lattner
a0769e790e Hoist the HazardRecognizer out of the ScheduleDAGList.cpp file to where
targets can implement them.  Make the top-down scheduler non-g5-specific.

llvm-svn: 26568
2006-03-06 00:20:29 +00:00
Chris Lattner
4dae9a978e add an emitnoop method
llvm-svn: 26563
2006-03-05 23:50:42 +00:00
Chris Lattner
c656f75535 custom lowered nodes are legal too
llvm-svn: 26561
2006-03-05 23:49:19 +00:00
Chris Lattner
5fd145d9c4 add a hook to insert a noop
llvm-svn: 26560
2006-03-05 23:48:51 +00:00
Jim Laskey
45dfae3a50 Breathe some life into a comment.
llvm-svn: 26553
2006-03-05 21:20:20 +00:00
Chris Lattner
a171bcca08 Add a new scheduling type. This is, of course, a hack. Proper factoring
will come later.

llvm-svn: 26551
2006-03-05 21:08:06 +00:00
Chris Lattner
9f589d65a1 Add a copysign node
llvm-svn: 26540
2006-03-05 05:06:40 +00:00
Jim Laskey
f915b6b08b Adding basic structure support.
llvm-svn: 26505
2006-03-03 15:06:57 +00:00
Evan Cheng
4afe769361 Add more vector NodeTypes: VSDIV, VUDIV, VAND, VOR, and VXOR.
llvm-svn: 26504
2006-03-03 07:01:07 +00:00
Evan Cheng
0c445855f2 Number of NodeTypes now exceeds 128.
llvm-svn: 26503
2006-03-03 06:58:59 +00:00
Evan Cheng
4ddc3b2c54 SDOperand::isOperand should not be a forwarding. It must check *this against N's operands.
llvm-svn: 26502
2006-03-03 06:42:32 +00:00
Evan Cheng
183b913508 Added isOperand(N): true if this is an operand of N
llvm-svn: 26501
2006-03-03 06:24:54 +00:00
Chris Lattner
eb2918b4d2 initial checkin of the intrinsic description file
llvm-svn: 26496
2006-03-03 02:33:15 +00:00
Chris Lattner
596d4baad0 update comment
llvm-svn: 26491
2006-03-03 01:55:49 +00:00
Chris Lattner
33112d0936 Split this out of Target.td
llvm-svn: 26488
2006-03-03 01:54:11 +00:00
Chris Lattner
999aa36a04 remove the read/write port/io intrinsics.
llvm-svn: 26479
2006-03-03 00:19:58 +00:00
Chris Lattner
ab22220755 Split memcpy/memset/memmove intrinsics into i32/i64 versions, resolving
PR709, and paving the way for future progress.

llvm-svn: 26476
2006-03-03 00:00:25 +00:00
Chris Lattner
8aa88f1325 Fix a compilation error with GCC 4.1. Thanks to Vladimir Merzliakov for
pointing this out.

llvm-svn: 26467
2006-03-02 00:21:41 +00:00
Jim Laskey
7ee6df939e Support for enumerations.
llvm-svn: 26466
2006-03-01 23:52:37 +00:00
Jim Laskey
25179d3dac Remove extra comma from enum list.
llvm-svn: 26457
2006-03-01 20:49:44 +00:00
Jim Laskey
ffef675325 Remove comma from enum list.
llvm-svn: 26456
2006-03-01 20:48:20 +00:00
Jim Laskey
c73a56236e Switch back to using actual dwarf tags. Simplifies code without loss to other
debug forms.

llvm-svn: 26455
2006-03-01 20:39:36 +00:00
Jim Laskey
09c0bfcbaf Use context and not compile unit.
llvm-svn: 26453
2006-03-01 18:20:30 +00:00
Jim Laskey
08fa0d0d99 Basic array support.
llvm-svn: 26451
2006-03-01 17:53:02 +00:00
Chris Lattner
40501a50fe Add interfaces for targets to provide target-specific dag combiner optimizations.
llvm-svn: 26442
2006-03-01 04:52:55 +00:00
Evan Cheng
b8a44ab1dd Missing a cast previously.
llvm-svn: 26434
2006-03-01 00:58:54 +00:00
Evan Cheng
c8110cdf46 - Added v2f32, not used by any target currently. Only for testing purpose.
- Minor bug fix.

llvm-svn: 26433
2006-03-01 00:55:26 +00:00
Evan Cheng
2cbf9d93d3 - Added VConstant as an abstract version of ConstantVec.
- All abstrct vector nodes must have # of elements and element type as their
first two operands.

llvm-svn: 26432
2006-03-01 00:51:13 +00:00