Igor Breger
87aafa073f
[GlobalISel][X86] Lower FormalArgument/Ret using G_MERGE_VALUES/G_UNMERGE_VALUES.
...
Summary: [GlobalISel][X86] Lower FormalArgument/Ret using G_MERGE_VALUES/G_UNMERGE_VALUES.
Reviewers: zvi, t.p.northover, guyblank
Reviewed By: t.p.northover
Subscribers: dberris, rovka, llvm-commits, kristof.beyls
Differential Revision: https://reviews.llvm.org/D32288
llvm-svn: 301194
2017-04-24 17:05:52 +00:00
Igor Breger
a8ba572dcf
[GlobalISel][X86] Support G_STORE/G_LOAD operation
...
Summary:
1. Support pointer type as function argumnet and return value
2. G_STORE/G_LOAD - set legal action for i8/i16/i32/i64/f32/f64/vec128
3. RegisterBank - support typeless operations like G_STORE/G_LOAD, for scalar use GPR bank.
4. Support instruction selection for G_LOAD/G_STORE
Reviewers: zvi, rovka, ab, qcolombet
Reviewed By: rovka
Subscribers: llvm-commits, dberris, kristof.beyls, eladcohen, guyblank
Differential Revision: https://reviews.llvm.org/D30973
llvm-svn: 298609
2017-03-23 15:25:57 +00:00
Tim Northover
c2c545b8f7
GlobalISel: restrict G_EXTRACT instruction to just one operand.
...
A bit more painful than G_INSERT because it was more widely used, but this
should simplify the handling of extract operations in most locations.
llvm-svn: 297100
2017-03-06 23:50:28 +00:00
Igor Breger
321cf3c650
[GlobalISel][X86] Support float/double and vector types.
...
Summary: [GlobalISel][X86] Add support for f32/f64 and vector types in RegisterBank and InstructionSelector.
Reviewers: delena, zvi
Reviewed By: zvi
Subscribers: dberris, rovka, llvm-commits, kristof.beyls
Differential Revision: https://reviews.llvm.org/D30533
llvm-svn: 296856
2017-03-03 08:06:46 +00:00
Igor Breger
5c31a4c9a3
[X86][GlobalISel] Add limited ret lowering support to the IRTranslator.
...
Summary:
Support return lowering for i8/i16/i32/i64/float/double, vector type supported for 64bit platform only.
Support argument lowering for float/double types.
Reviewers: t.p.northover, zvi, ab, rovka
Reviewed By: zvi
Subscribers: dberris, kristof.beyls, delena, llvm-commits
Differential Revision: https://reviews.llvm.org/D29261
llvm-svn: 294173
2017-02-06 08:37:41 +00:00
Igor Breger
9ea154d4ad
[X86][GlobalISel] Add limited argument lowering support to the IRTranslator.
...
Summary:
Add limited (i8/i16/i32/i64) argument lowering support to the IRTranslator.
Inspired by commit 289940.
Reviewers: t.p.northover, qcolombet, ab, zvi, rovka
Reviewed By: rovka
Subscribers: dberris, rovka, kristof.beyls, llvm-commits
Differential Revision: https://reviews.llvm.org/D28987
llvm-svn: 293427
2017-01-29 08:35:42 +00:00