blob: 30c5f0b100ebe615cb9c2db91cf1a93a8da5ffcc [file] [log] [blame]
Ehsan Amiria538b0f2016-08-03 18:17:35 +00001; RUN: llc -verify-machineinstrs < %s -march=ppc64 -mcpu=a2q | FileCheck %s
Hal Finkel6b6e9e22015-02-25 01:26:59 +00002target triple = "powerpc64-bgq-linux"
Hal Finkelc93a9a22015-02-25 01:06:45 +00003
4define <4 x float> @foo(<4 x float>* %p) {
5entry:
David Blaikiea79ac142015-02-27 21:17:42 +00006 %v = load <4 x float>, <4 x float>* %p, align 4
Hal Finkelc93a9a22015-02-25 01:06:45 +00007 ret <4 x float> %v
8}
9
10; CHECK: @foo
11; CHECK-DAG: li [[REG1:[0-9]+]], 15
12; CHECK-DAG: qvlfsx [[REG4:[0-9]+]], 0, 3
13; CHECK-DAG: qvlfsx [[REG2:[0-9]+]], 3, [[REG1]]
14; CHECK-DAG: qvlpclsx [[REG3:[0-9]+]], 0, 3
15; CHECK-DAG: qvfperm 1, [[REG4]], [[REG2]], [[REG3]]
16; CHECK: blr
17
18define <4 x float> @bar(<4 x float>* %p) {
19entry:
David Blaikiea79ac142015-02-27 21:17:42 +000020 %v = load <4 x float>, <4 x float>* %p, align 16
Hal Finkelc93a9a22015-02-25 01:06:45 +000021 ret <4 x float> %v
22}
23
24; CHECK: @bar
25; CHECK: qvlfsx
26