mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-30 17:33:24 +00:00
[NVPTX] 64-bit ADDC/ADDE are not legal
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185333 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
be08c60533
commit
fc32eb472a
@ -204,6 +204,9 @@ NVPTXTargetLowering::NVPTXTargetLowering(NVPTXTargetMachine &TM)
|
|||||||
// TRAP can be lowered to PTX trap
|
// TRAP can be lowered to PTX trap
|
||||||
setOperationAction(ISD::TRAP, MVT::Other, Legal);
|
setOperationAction(ISD::TRAP, MVT::Other, Legal);
|
||||||
|
|
||||||
|
setOperationAction(ISD::ADDC, MVT::i64, Expand);
|
||||||
|
setOperationAction(ISD::ADDE, MVT::i64, Expand);
|
||||||
|
|
||||||
// Register custom handling for vector loads/stores
|
// Register custom handling for vector loads/stores
|
||||||
for (int i = MVT::FIRST_VECTOR_VALUETYPE; i <= MVT::LAST_VECTOR_VALUETYPE;
|
for (int i = MVT::FIRST_VECTOR_VALUETYPE; i <= MVT::LAST_VECTOR_VALUETYPE;
|
||||||
++i) {
|
++i) {
|
||||||
|
19
test/CodeGen/NVPTX/add-128bit.ll
Normal file
19
test/CodeGen/NVPTX/add-128bit.ll
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
; RUN: llc < %s -march=nvptx -mcpu=sm_20 | FileCheck %s
|
||||||
|
|
||||||
|
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v16:16:16-v32:32:32-v64:64:64-v128:128:128-n16:32:64"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
define void @foo(i64 %a, i64 %add, i128* %retptr) {
|
||||||
|
; CHECK: add.s64
|
||||||
|
; CHECK: setp.lt.u64
|
||||||
|
; CHECK: setp.lt.u64
|
||||||
|
; CHECK: selp.b64
|
||||||
|
; CHECK: selp.b64
|
||||||
|
; CHECK: add.s64
|
||||||
|
%t1 = sext i64 %a to i128
|
||||||
|
%add2 = zext i64 %add to i128
|
||||||
|
%val = add i128 %t1, %add2
|
||||||
|
store i128 %val, i128* %retptr
|
||||||
|
ret void
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user