Brian Gaeke
1f42181f99
Support binary operations with immediates for <= cInt.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18756 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-10 08:39:28 +00:00
Brian Gaeke
2b314430f7
Update lists of failing benchmarks (except C++...something is the
...
matter with my sparcv8 libstdc++.a) and to-do list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18755 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-10 08:39:27 +00:00
Brian Gaeke
57600548c7
Adjust paths: Sparc/V8 --> SparcV8
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18737 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-10 04:48:57 +00:00
Brian Gaeke
8fe429d0c2
Make this file self-contained.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18736 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-10 04:46:30 +00:00
Brian Gaeke
09d8d67066
Update list of failing MultiSource benchmarks. It works out to +5 -5, but I
...
think some of these might be the CFE's fault; a rebuild should come soon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18735 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-10 04:42:46 +00:00
Brian Gaeke
8ee6a2fb16
When FpMOVDs appeared in pairs, we were mistakenly skipping over the latter of
...
each pair. I think this fixes that.
One of these days, I swear I'm going to get the hang of C++ iterators.
Really.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18734 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-10 04:42:45 +00:00
Brian Gaeke
3616f91b71
We're continuing to make progress on MultiSource.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18714 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-09 18:54:31 +00:00
Brian Gaeke
20503bd958
Bytes and shorts are aligned differently from words.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18713 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-09 18:51:02 +00:00
Brian Gaeke
3bf960ccac
Fix asm-printing directives (how did we not see this before...apparently,
...
everything was an int!)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18712 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-09 18:51:01 +00:00
Brian Gaeke
1d65645582
This code rotted - change it to call abort() until someone wants
...
to rewrite this to use relocations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18453 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-03 06:57:14 +00:00
Brian Gaeke
cb7a76283b
Update list of failing benchmarks.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18384 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 08:15:44 +00:00
Brian Gaeke
9e0b9028c7
If we're about to emit something like:
...
%f0 = fmovs %f0
%f1 = fmovs %f1
then just delete the FpMOVD pseudo-instruction instead. Also, add
statistics and debug printouts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18383 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 08:15:15 +00:00
Brian Gaeke
e4ed742588
Update list of failing benchmarks.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18202 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-24 04:07:42 +00:00
Brian Gaeke
31e575901f
Fix bug in emitGEPOperation with large struct-member offsets.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18201 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-24 04:07:33 +00:00
Brian Gaeke
88108b8cfa
Support shr long/ulong.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18173 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-23 21:10:50 +00:00
Brian Gaeke
4dd043f090
Support printing ConstantAggregateZeros.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18172 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-23 21:10:49 +00:00
Brian Gaeke
8a0c4fd0c6
Update failing SingleSource test-case list.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18171 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-23 21:10:48 +00:00
Brian Gaeke
fbe558c993
pseudocode for 64-bit lshr.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18154 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-23 08:14:09 +00:00
Brian Gaeke
2041d0ca12
Add more known-failing tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18149 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-23 06:39:50 +00:00
Brian Gaeke
82a4795850
Add the rest of the logical instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18148 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-23 06:39:37 +00:00
Brian Gaeke
9ffcf9fddd
Add stub method for long shift codegen.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18100 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-22 08:02:06 +00:00
Brian Gaeke
6f0b77221c
Update to-do list.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18099 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-22 08:02:05 +00:00
Brian Gaeke
c7b4f1033f
Implement setcc on longs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18088 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-21 08:11:28 +00:00
Brian Gaeke
4351857d78
Add all the rest of the ADD and SUB variants, some of which are important for
...
64-bit support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18087 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-21 07:13:17 +00:00
Brian Gaeke
5f91de2b38
Support add, sub, mul, div, rem on longs/ulongs (latter 3 by emitting libcalls).
...
Add a big comment containing my notes on how to do setcc for longs/ulongs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18086 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-21 07:13:16 +00:00
Brian Gaeke
b10fc0343f
Update to-do list.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18085 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-21 07:13:15 +00:00
Brian Gaeke
79fe833411
Fix extraStack calculation -- I think in fact it might be getting a bit *too*
...
much stack, but that's better than not enough, which leads to miscompilations.
Fix FP vaarg.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18079 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-21 03:35:22 +00:00
Brian Gaeke
e1e2899e96
Update list of failing benchmarks & to-do list.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18078 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-21 03:35:21 +00:00
Brian Gaeke
b95cbee930
Support most cases of vaarg (except double).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18055 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-20 22:50:42 +00:00
Brian Gaeke
087f0858ef
Update failing test cases & to-do list.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18054 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-20 22:50:41 +00:00
Brian Gaeke
e6e7e3aadd
Implement vacopy and vanext.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18031 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-20 03:32:12 +00:00
Misha Brukman
1dc555c0d3
Revert the patch that adds Function* for each 64-bit libc div/mul/rem that we
...
want to do; instead, we can use MachineInstr::addExternalSymbol(char*, bool) and
thus we don't have to modify the Module as we are code generating for it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18025 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-20 00:10:20 +00:00
Misha Brukman
d42b167e61
Fix grammar
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18023 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 23:09:40 +00:00
Misha Brukman
d159aafc26
Add protoypes for 64-bit long/ulong div, mul, and rem functions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18019 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 22:14:35 +00:00
Misha Brukman
c11c44f55b
Handle GhostLinkage case for completeness (should not be seen by the asm writer)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18015 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 21:49:19 +00:00
Brian Gaeke
b6c409a13d
Add VANext and VAArg stubs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18012 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 21:08:18 +00:00
Brian Gaeke
d90282db12
Implement va_start.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18011 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 20:57:24 +00:00
Brian Gaeke
4e459c465e
First part of varargs support: getting all varargs which could possibly
...
be in registers into memory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18006 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 20:31:08 +00:00
Brian Gaeke
2f95ed65e0
va_end can safely be codegen'd to nothing on v8.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18004 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 19:21:34 +00:00
Brian Gaeke
9e672a2d1b
A very sorry stub implementation of varargs intrinsics...
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18003 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 18:53:59 +00:00
Brian Gaeke
507bc71820
Update list of expected test failures.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18002 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 18:48:29 +00:00
Brian Gaeke
a54df2503b
Fix bug in casting to long/ulong.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18001 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 18:48:10 +00:00
Brian Gaeke
7c0afe04ab
Rewrite LoadArgumentsToVirtualRegs, making it match almost exactly how
...
visitCallInst works. Support cast of byte/short/int to long.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17949 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 07:43:33 +00:00
Brian Gaeke
7ba2a43866
Update current expected failures list - expand it to include all of
...
SingleSource. Update to-do list (open-coding refers to binary operations on
longs, not to passing them into functions, which we already support.)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17948 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 07:43:32 +00:00
Brian Gaeke
4b92ed6d58
Allocate fewer registers and tighten up alignment restrictions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17929 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 00:25:20 +00:00
Brian Gaeke
c935cf111c
Update to-do list.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17927 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-17 22:33:55 +00:00
Brian Gaeke
b662963d3b
Update list of failing SingleSource Benchmarks
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17926 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-17 22:33:28 +00:00
Brian Gaeke
b3e0017763
We were (somehow) getting the wrong branch opcode for setcc float instrs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17925 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-17 22:06:56 +00:00
Brian Gaeke
4cda591341
Update list of failing benchmarks
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17895 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-16 07:32:58 +00:00
Brian Gaeke
b354b7148e
Correct the implicit-defs information for indirect and direct calls.
...
You can't have implicit defs that overlap explicit defs, or implicit
defs that alias one another.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17894 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-16 07:32:09 +00:00