Anton Korobeynikov
|
89f45fb02c
|
Expand frem
llvm-svn: 76315
|
2009-07-18 13:44:25 +00:00 |
|
Anton Korobeynikov
|
a806bf16c4
|
Turn abort() into unreachable
llvm-svn: 76314
|
2009-07-18 13:34:59 +00:00 |
|
Anton Korobeynikov
|
b3e0446dbb
|
Turn few asserts into errors / unreachable's
llvm-svn: 76313
|
2009-07-18 13:33:17 +00:00 |
|
Anton Korobeynikov
|
ff561b2308
|
Provide expansion for ct* intrinsics
llvm-svn: 76311
|
2009-07-18 12:26:13 +00:00 |
|
Anton Korobeynikov
|
f31ebc380b
|
Expand sext_inreg for i1
llvm-svn: 76310
|
2009-07-18 12:20:36 +00:00 |
|
Anton Korobeynikov
|
c66cf22284
|
Unbreak
llvm-svn: 76064
|
2009-07-16 14:36:52 +00:00 |
|
Anton Korobeynikov
|
373515d99e
|
Expand 32-bit bitconverts via memory
llvm-svn: 76050
|
2009-07-16 14:30:29 +00:00 |
|
Anton Korobeynikov
|
74497b2190
|
i32 values are passed extended also on stack. Handle this in generic way
llvm-svn: 76047
|
2009-07-16 14:29:05 +00:00 |
|
Anton Korobeynikov
|
319dc4e8d3
|
We definitely have 1-0 bools
llvm-svn: 76046
|
2009-07-16 14:28:46 +00:00 |
|
Anton Korobeynikov
|
0276bc9176
|
Out GR128 regclass is not a 'real' i128 one.
llvm-svn: 76044
|
2009-07-16 14:27:53 +00:00 |
|
Anton Korobeynikov
|
4181716247
|
Handle bitconverts
llvm-svn: 76042
|
2009-07-16 14:27:01 +00:00 |
|
Anton Korobeynikov
|
ff6d84fd85
|
Expand fp_to_uint too
llvm-svn: 76040
|
2009-07-16 14:26:06 +00:00 |
|
Anton Korobeynikov
|
da480ca78d
|
We don't have FP truncstores
llvm-svn: 76039
|
2009-07-16 14:25:46 +00:00 |
|
Anton Korobeynikov
|
7ea47e70b3
|
Expand uint_to_fp
llvm-svn: 76038
|
2009-07-16 14:25:30 +00:00 |
|
Anton Korobeynikov
|
886e977c69
|
Make FP zero to be legal FP immediate via LOAD ZERO
llvm-svn: 76034
|
2009-07-16 14:24:16 +00:00 |
|
Anton Korobeynikov
|
b90a38d00d
|
Proper FP extloads
llvm-svn: 76028
|
2009-07-16 14:22:46 +00:00 |
|
Anton Korobeynikov
|
940ec5955b
|
Add proper PWS impdef's
llvm-svn: 76027
|
2009-07-16 14:22:30 +00:00 |
|
Anton Korobeynikov
|
3f37f337be
|
Propagate FP select_cc to dag inserters
llvm-svn: 76026
|
2009-07-16 14:22:15 +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
|
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
|
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
|
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
|
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
|
1e1f1a789b
|
Proper lower 'small' results
llvm-svn: 75962
|
2009-07-16 13:58:24 +00:00 |
|
Anton Korobeynikov
|
ce2b70586e
|
Lower addresses of globals
llvm-svn: 75960
|
2009-07-16 13:57:27 +00:00 |
|
Anton Korobeynikov
|
d984dc6c9d
|
Provide "wide" muls and divs/rems
llvm-svn: 75958
|
2009-07-16 13:56:42 +00:00 |
|
Anton Korobeynikov
|
c42f164135
|
Preliminary mul lowering
llvm-svn: 75951
|
2009-07-16 13:53:55 +00:00 |
|
Anton Korobeynikov
|
f93f6b0ed3
|
More extloads
llvm-svn: 75950
|
2009-07-16 13:53:35 +00:00 |
|
Anton Korobeynikov
|
e26fb377c5
|
SELECT_CC lowering
llvm-svn: 75948
|
2009-07-16 13:52:51 +00:00 |
|
Anton Korobeynikov
|
769a8c2312
|
Conditional branches and comparisons
llvm-svn: 75947
|
2009-07-16 13:52:31 +00:00 |
|
Anton Korobeynikov
|
3df5bd3b40
|
Emit correct offset for PseudoSourceValue
llvm-svn: 75946
|
2009-07-16 13:52:10 +00:00 |
|
Anton Korobeynikov
|
57bf9a3426
|
Provide proper stack offsets for outgoing arguments
llvm-svn: 75945
|
2009-07-16 13:51:53 +00:00 |
|
Anton Korobeynikov
|
4fcadd1a7d
|
Some preliminary call lowering
llvm-svn: 75941
|
2009-07-16 13:50:21 +00:00 |
|
Anton Korobeynikov
|
47c086cc6b
|
Add mem-imm stores
llvm-svn: 75933
|
2009-07-16 13:47:14 +00:00 |
|
Anton Korobeynikov
|
f080a4a0bd
|
Add shifts and reg-imm address matching
llvm-svn: 75927
|
2009-07-16 13:43:18 +00:00 |
|
Anton Korobeynikov
|
de69aad588
|
Add bunch of 32-bit patterns... Uffff :)
llvm-svn: 75926
|
2009-07-16 13:42:31 +00:00 |
|
Anton Korobeynikov
|
b902c71a90
|
Add 32 bit subregs
llvm-svn: 75923
|
2009-07-16 13:35:30 +00:00 |
|
Anton Korobeynikov
|
7fe1d9c90e
|
Minimal lowering for formal_arguments / ret
llvm-svn: 75911
|
2009-07-16 13:28:59 +00:00 |
|
Anton Korobeynikov
|
8155f0cbaa
|
Let's start another backend :)
llvm-svn: 75909
|
2009-07-16 13:27:25 +00:00 |
|