Commit Graph

4333 Commits

Author SHA1 Message Date
Dan Gohman
dde01ec409 These two tests now require only two multiply instructions,
instead of four.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42784 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-09 15:39:37 +00:00
Evan Cheng
f6be158e9e Update test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42775 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-08 22:20:32 +00:00
Dan Gohman
b5d12c4438 These two tests now require only three multiply instructions,
instead of four.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42765 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-08 20:48:12 +00:00
Gordon Henriksen
2618a6c112 C and Objective Caml bindings for PHINode::addIncoming etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42760 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-08 18:14:39 +00:00
Gordon Henriksen
6d6203dff3 C and Objective Caml bindings for getFunction and getNamedGlobal. Also enhanced
the Objective Caml 'declare_*' functions to behave more or less like
getOrInsertFunction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42740 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-08 03:45:09 +00:00
Gordon Henriksen
c84c16be9b C and Objective Caml bindings for GlobalVariable::isConstant.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42736 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-07 17:31:42 +00:00
Gordon Henriksen
1cf08fddc7 C and Objective Caml bindings for PATypeHolder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42713 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-07 00:13:35 +00:00
Gordon Henriksen
c0491ac8b6 Bindings for the verifier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42707 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-06 21:00:36 +00:00
Gordon Henriksen
957f9fe1cc Adopting a uniform naming convention for type constructors in
bindings (part le deux).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42701 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-06 16:56:09 +00:00
Gordon Henriksen
e3b989d4a4 Adopting a uniform naming convention for constant constructors in bindings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42697 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-06 15:11:06 +00:00
Gordon Henriksen
4647569fe7 Adding C and Ocaml bindings for ConstantExpr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42696 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-06 14:29:36 +00:00
Dale Johannesen
b762c086c8 Make test work on non-x86 hosts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42671 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-06 01:22:39 +00:00
Evan Cheng
bf287b63b3 Test case for 3-address conversion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42664 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-05 23:33:09 +00:00
Evan Cheng
ecf80ac68a Enable convertToThreeAddress for X86 by default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42655 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-05 22:31:10 +00:00
Devang Patel
5c4cd0d82e Fix bug in updating dominance frontier after loop
unswitch when frontier includes basic blocks that 
are not inside loop.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42654 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-05 22:29:34 +00:00
Dale Johannesen
161e897b0f First round of ppc long double. call/return and
basic arithmetic works.
Rename RTLIB long double functions to distinguish
different flavors of long double; the lib functions
have different names, alas.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42644 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-05 20:04:43 +00:00
Evan Cheng
eca18214bb New test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42628 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-05 01:44:22 +00:00
Bill Wendling
5b095f2f02 Support Objective C++ too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42610 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-04 18:47:25 +00:00
Bill Wendling
14af7450c2 Added testcase for creation of metadata with null pointers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42609 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-04 18:46:06 +00:00
Bill Wendling
1f228360ec un-XFAIL this test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42606 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-04 09:33:08 +00:00
Bill Wendling
17e0d894d5 Temporarily XFAIL this test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42583 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-03 17:46:54 +00:00
Chris Lattner
4ec2c7eba0 testcase for PR1647
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42570 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-03 05:29:07 +00:00
Gordon Henriksen
6530e9d8e6 Add explicit --enable-bindings option to configure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42526 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-02 09:50:18 +00:00
Devang Patel
fdd7c6babf Fix test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42522 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-02 00:47:43 +00:00
Devang Patel
d6f8ee7120 New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42517 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-02 00:39:19 +00:00
Evan Cheng
d18ba7c8de -pre-RA-sched=none, simple, simple-noitin are gone.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42505 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-01 22:17:20 +00:00
Devang Patel
4424757d3e PR 1603 test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42502 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-01 21:22:57 +00:00
Devang Patel
bc2265abe1 Relax unsafe use check. If there is one unconditional use inside the loop then it is safe to promote value even if there is another conditional use inside the loop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42493 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-01 18:12:58 +00:00
Devang Patel
fb71392848 Do not ignore packed member size while selecting union type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42458 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-28 23:54:26 +00:00
Dan Gohman
9fe4662d9a Teach SplitVectorOp how to split INSERT_VECTOR_ELT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42457 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-28 23:53:40 +00:00
Rafael Espindola
068317bfa3 Refactor the memcpy lowering for the x86 target.
The only generated code difference is that now we call memcpy when
the size of the array is unknown. This matches GCC behavior and is
better since the run time value can be arbitrarily large.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42433 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-28 12:53:01 +00:00
Dale Johannesen
317096ab37 Add sqrt and powi intrinsics for long double.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42423 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-28 01:08:20 +00:00
Devang Patel
cdc52b0dd7 While searching for appropriate place for temporaries, do not over-incerement iterator.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42406 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-27 18:02:47 +00:00
Chris Lattner
b1ab71d997 new testcase for PR1708
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42398 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-27 15:47:16 +00:00
Nick Lewycky
9a2f93121b Build the correct range for loops with unusual bounds. Fix from Jay Foad.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42394 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-27 14:12:54 +00:00
Dale Johannesen
fe5293daa2 Modernize fabs.ll, add long double. Add tests
for direct codegen of fsin/fcos.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42369 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-26 21:12:10 +00:00
Gordon Henriksen
46abf91f73 Added C and Ocaml bindings for functions, basic blocks, and
instruction creation. No support yet for instruction introspection.

Also eliminated allocas from the Ocaml bindings for portability,
and avoided unnecessary casts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42367 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-26 20:56:12 +00:00
Duncan Sands
0d91645ba4 Test the C front-end, not the C++ front-end.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42350 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-26 07:28:20 +00:00
Duncan Sands
ca9976d6fe Test that local variables are aligned as the user requested.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42338 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-26 04:04:29 +00:00
Devang Patel
a6dff2faeb Handle multiple induction variables.
This fixes PR714.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42309 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-25 18:24:48 +00:00
Dan Gohman
a37c9f7506 When both x/y and x%y are needed (x and y both scalar integer), compute
both results with a single div or idiv instruction. This uses new X86ISD
nodes for DIV and IDIV which are introduced during the legalize phase
so that the SelectionDAG's CSE can automatically eliminate redundant
computations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42308 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-25 18:23:27 +00:00
Dale Johannesen
2246bb6011 Some tests for APFloat conversions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42303 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-25 17:50:55 +00:00
Evan Cheng
6ee23ad74b Forgot to check in the changes. Fix test case so it doesn't break with any scheduling changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42302 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-25 17:47:38 +00:00
Devang Patel
453a844128 Add transformation to update loop interation space. Now,
for (i=A; i<N; i++) {
  if (i < X && i > Y)
    do_something();
}

is transformed into

U=min(N,X); L=max(A,Y);
for (i=L;i<U;i++)
  do_somethihg();                            



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42299 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-25 17:31:19 +00:00
Devang Patel
128459b85b Do not promote null values because it may be unsafe to do so.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42270 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-24 20:02:42 +00:00
Tanya Lattner
06611dfbdf XFAIL for llvm-gcc4.0
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42266 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-24 17:14:53 +00:00
Dan Gohman
e40c7b0973 Use the correct result value type instead of using getValueType(0)
in ExpandEXTRACT_VECTOR_ELT and SplitVectorOp. This fixes an abort
in the included testcase.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42264 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-24 15:54:53 +00:00
Dan Gohman
ea81d095dc Fix a typo in a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42263 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-24 15:50:11 +00:00
Dale Johannesen
c557a9c00a Implementation of +sse -sse2 has changed; add
-sse to preserve intent of this test.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42247 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-23 14:58:14 +00:00
Devang Patel
3f65f02d25 Fix PR1692
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42209 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-21 21:18:19 +00:00