xref: /aosp_15_r20/external/llvm/test/CodeGen/NVPTX/extloadv.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=nvptx64 -mcpu=sm_35 | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Workerdefine void @foo(float* nocapture readonly %x_value, double* nocapture %output) #0 {
4*9880d681SAndroid Build Coastguard Worker  %1 = bitcast float* %x_value to <4 x float>*
5*9880d681SAndroid Build Coastguard Worker  %2 = load <4 x float>, <4 x float>* %1, align 16
6*9880d681SAndroid Build Coastguard Worker  %3 = fpext <4 x float> %2 to <4 x double>
7*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: ld.v2.f32 {%fd{{[0-9]+}}, %fd{{[0-9]+}}}, [%rd{{[0-9]+}}];
8*9880d681SAndroid Build Coastguard Worker; CHECK:  cvt.f64.f32
9*9880d681SAndroid Build Coastguard Worker; CHECK:  cvt.f64.f32
10*9880d681SAndroid Build Coastguard Worker; CHECK:  cvt.f64.f32
11*9880d681SAndroid Build Coastguard Worker; CHECK:  cvt.f64.f32
12*9880d681SAndroid Build Coastguard Worker  %4 = bitcast double* %output to <4 x double>*
13*9880d681SAndroid Build Coastguard Worker  store <4 x double> %3, <4 x double>* %4
14*9880d681SAndroid Build Coastguard Worker  ret void
15*9880d681SAndroid Build Coastguard Worker}
16