1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=ppc64 -mcpu=a2q | FileCheck %s 2*9880d681SAndroid Build Coastguard Workertarget triple = "powerpc64-bgq-linux" 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdefine <4 x float> @foo(<4 x float>* %p) { 5*9880d681SAndroid Build Coastguard Workerentry: 6*9880d681SAndroid Build Coastguard Worker %v = load <4 x float>, <4 x float>* %p, align 4 7*9880d681SAndroid Build Coastguard Worker ret <4 x float> %v 8*9880d681SAndroid Build Coastguard Worker} 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Worker; CHECK: @foo 11*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: li [[REG1:[0-9]+]], 15 12*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: qvlfsx [[REG4:[0-9]+]], 0, 3 13*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: qvlfsx [[REG2:[0-9]+]], 3, [[REG1]] 14*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: qvlpclsx [[REG3:[0-9]+]], 0, 3 15*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: qvfperm 1, [[REG4]], [[REG2]], [[REG3]] 16*9880d681SAndroid Build Coastguard Worker; CHECK: blr 17*9880d681SAndroid Build Coastguard Worker 18*9880d681SAndroid Build Coastguard Workerdefine <4 x float> @bar(<4 x float>* %p) { 19*9880d681SAndroid Build Coastguard Workerentry: 20*9880d681SAndroid Build Coastguard Worker %v = load <4 x float>, <4 x float>* %p, align 16 21*9880d681SAndroid Build Coastguard Worker ret <4 x float> %v 22*9880d681SAndroid Build Coastguard Worker} 23*9880d681SAndroid Build Coastguard Worker 24*9880d681SAndroid Build Coastguard Worker; CHECK: @bar 25*9880d681SAndroid Build Coastguard Worker; CHECK: qvlfsx 26*9880d681SAndroid Build Coastguard Worker 27