Anton Korobeynikov
|
dc167c2eec
|
Implement fp_to_sint
llvm-svn: 76025
|
2009-07-16 14:21:57 +00:00 |
|
Anton Korobeynikov
|
e372330133
|
Implement FP regs spills / restores
llvm-svn: 76024
|
2009-07-16 14:21:41 +00:00 |
|
Anton Korobeynikov
|
0c3534b070
|
Add fabs
llvm-svn: 76023
|
2009-07-16 14:21:27 +00:00 |
|
Anton Korobeynikov
|
fc1f449073
|
Add fneg
llvm-svn: 76022
|
2009-07-16 14:21:12 +00:00 |
|
Anton Korobeynikov
|
a73f3ffb1f
|
We don't have native sine / cosine instructions
llvm-svn: 76021
|
2009-07-16 14:20:56 +00:00 |
|
Anton Korobeynikov
|
d2feb0d2e4
|
More sint_to_fp stuff
llvm-svn: 76020
|
2009-07-16 14:20:39 +00:00 |
|
Anton Korobeynikov
|
23615e0340
|
Add bunch of FP instructions
llvm-svn: 76019
|
2009-07-16 14:20:24 +00:00 |
|
Anton Korobeynikov
|
32c9954322
|
We don't have any FP extloads
llvm-svn: 76018
|
2009-07-16 14:20:08 +00:00 |
|
Anton Korobeynikov
|
643215b0d7
|
Implement all comparisons
llvm-svn: 76017
|
2009-07-16 14:19:54 +00:00 |
|
Anton Korobeynikov
|
488f8c2fd1
|
Add constpool lowering / printing
llvm-svn: 76016
|
2009-07-16 14:19:35 +00:00 |
|
Anton Korobeynikov
|
4dbabbe3cf
|
Allow FP arguments pass / return
llvm-svn: 76015
|
2009-07-16 14:19:16 +00:00 |
|
Anton Korobeynikov
|
d4e7c7a373
|
Register FP regclasses
llvm-svn: 76014
|
2009-07-16 14:19:02 +00:00 |
|
Anton Korobeynikov
|
2ccdd0fd2b
|
Add FP regs
llvm-svn: 76013
|
2009-07-16 14:18:48 +00:00 |
|
Anton Korobeynikov
|
d8ced10967
|
Fix fallout from prev. patch
llvm-svn: 76012
|
2009-07-16 14:18:31 +00:00 |
|
Anton Korobeynikov
|
3e670f38f9
|
Provide consistent subreg idx scheme. This (hopefully) fixes remaining divide problems
llvm-svn: 76011
|
2009-07-16 14:18:17 +00:00 |
|
Anton Korobeynikov
|
bf722c6946
|
Use divide single for 32 bit signed divides
llvm-svn: 76010
|
2009-07-16 14:17:52 +00:00 |
|
Anton Korobeynikov
|
785f486b30
|
Add missed operands types
llvm-svn: 76009
|
2009-07-16 14:17:07 +00:00 |
|
Anton Korobeynikov
|
41d3ac1720
|
Missed part of prev. patch
llvm-svn: 76008
|
2009-07-16 14:16:45 +00:00 |
|
Anton Korobeynikov
|
7cf7a634df
|
Another attempt to fix prologue emission
llvm-svn: 76007
|
2009-07-16 14:16:26 +00:00 |
|
Anton Korobeynikov
|
b3af53a626
|
Implement 'large' PIC model
llvm-svn: 76006
|
2009-07-16 14:16:05 +00:00 |
|
Anton Korobeynikov
|
2889a28adb
|
Implement shifts properly (hopefilly - finally!)
llvm-svn: 76005
|
2009-07-16 14:15:24 +00:00 |
|
Anton Korobeynikov
|
6ff1411adf
|
Remove redundand register move
llvm-svn: 76004
|
2009-07-16 14:14:54 +00:00 |
|
Anton Korobeynikov
|
f48e88136e
|
Properly handle divides. As a bonus - implement memory versions of them.
llvm-svn: 76003
|
2009-07-16 14:14:33 +00:00 |
|
Anton Korobeynikov
|
3434b05a2c
|
Fix epic fail: full-width muls are not commutable. This unbreaks bunch of stuff from SingleSource/Benchmarks/Stanford
llvm-svn: 76002
|
2009-07-16 14:14:01 +00:00 |
|
Anton Korobeynikov
|
ca4d4129c6
|
32 bit rotate is not twoaddr instruction
llvm-svn: 76001
|
2009-07-16 14:13:43 +00:00 |
|
Anton Korobeynikov
|
e6b7c15a63
|
32 bit shifts have only 12 bit displacements
llvm-svn: 76000
|
2009-07-16 14:13:24 +00:00 |
|
Anton Korobeynikov
|
cffc479110
|
Add proper register aliases
llvm-svn: 75999
|
2009-07-16 14:12:54 +00:00 |
|
Anton Korobeynikov
|
2954802d28
|
Properly generate stack frame
llvm-svn: 75998
|
2009-07-16 14:12:36 +00:00 |
|
Anton Korobeynikov
|
0e3d764cc1
|
Unbreak indirect branches
llvm-svn: 75997
|
2009-07-16 14:12:18 +00:00 |
|
Anton Korobeynikov
|
07380f3ab0
|
Unbreak
llvm-svn: 75996
|
2009-07-16 14:12:00 +00:00 |
|
Anton Korobeynikov
|
1764c55d85
|
Do not forget to save R15 when we allocate stack frame
llvm-svn: 75995
|
2009-07-16 14:11:40 +00:00 |
|
Anton Korobeynikov
|
31bef4e21c
|
All calls clobbers R14
llvm-svn: 75994
|
2009-07-16 14:11:22 +00:00 |
|
Anton Korobeynikov
|
a04cb342a7
|
Unbreak calls to vararg functions
llvm-svn: 75993
|
2009-07-16 14:11:03 +00:00 |
|
Anton Korobeynikov
|
decd66501b
|
Stupid typo
llvm-svn: 75992
|
2009-07-16 14:10:49 +00:00 |
|
Anton Korobeynikov
|
6d0c8510ab
|
Typos
llvm-svn: 75991
|
2009-07-16 14:10:35 +00:00 |
|
Anton Korobeynikov
|
6c1091e7f3
|
Consolidate reg-imm / reg-reg-imm address mode selection logic in one place.
llvm-svn: 75990
|
2009-07-16 14:10:17 +00:00 |
|
Anton Korobeynikov
|
292a84921d
|
Fix fallout from 12-bit stuff landing: decide whether 20 bit displacements are needed during elimination of frame indexes.
llvm-svn: 75989
|
2009-07-16 14:09:56 +00:00 |
|
Anton Korobeynikov
|
9a1ad49207
|
Add support for 12 bit displacements
llvm-svn: 75988
|
2009-07-16 14:09:35 +00:00 |
|
Anton Korobeynikov
|
c2ec4e23f6
|
We already have reserved call frame regardless whether variable sized frame objects were present or not
llvm-svn: 75987
|
2009-07-16 14:09:04 +00:00 |
|
Anton Korobeynikov
|
a809635fc8
|
Emit proper lowering of load from arg stack slot
llvm-svn: 75986
|
2009-07-16 14:08:42 +00:00 |
|
Anton Korobeynikov
|
9013a1ee39
|
Implement dynamic allocas
llvm-svn: 75985
|
2009-07-16 14:08:15 +00:00 |
|
Anton Korobeynikov
|
ee8ce5b760
|
Add jump tables
llvm-svn: 75984
|
2009-07-16 14:07:50 +00:00 |
|
Anton Korobeynikov
|
cb3ee3ee90
|
Exapnd br_jt into indirect branch. Provide pattern for indirect branches.
llvm-svn: 75983
|
2009-07-16 14:07:24 +00:00 |
|
Anton Korobeynikov
|
21e498ac1c
|
Implement 64 bit immediates
llvm-svn: 75982
|
2009-07-16 14:07:06 +00:00 |
|
Anton Korobeynikov
|
ab90a05ff3
|
Add rotates
llvm-svn: 75981
|
2009-07-16 14:06:49 +00:00 |
|
Anton Korobeynikov
|
ff5b07e994
|
Add patterns for integer negate
llvm-svn: 75980
|
2009-07-16 14:06:27 +00:00 |
|
Anton Korobeynikov
|
335aeecedc
|
Provide proper patterns for and with imm instructions. Tune the tests accordingly.
llvm-svn: 75979
|
2009-07-16 14:06:00 +00:00 |
|
Anton Korobeynikov
|
49d065e9c9
|
Add 32 bit and reg-imm and disable invalid patterns for now
llvm-svn: 75978
|
2009-07-16 14:05:32 +00:00 |
|
Anton Korobeynikov
|
c9778b81c9
|
Add z9 and z10 target processors. Mark z10-only instructions as such.
llvm-svn: 75977
|
2009-07-16 14:05:00 +00:00 |
|
Anton Korobeynikov
|
0cc45f7a03
|
Fix MUL64rm instruction asmprinting
llvm-svn: 75976
|
2009-07-16 14:04:38 +00:00 |
|