Lines Matching +full:matrix +full:- +full:matrix +full:- +full:transpose
1 ; REQUIRES: aarch64-registered-target
5 …-passes=lower-matrix-intrinsics -pass-remarks-output=%t -pass-remarks=lower-matrix-intrinsics -mtr…
6 ; RUN: FileCheck --input-file=%t --check-prefix=YAML %s
8 ; YAML-LABEL: --- !Passed
9 ; YAML-NEXT: Pass: lower-matrix-intrinsics
10 ; YAML-NEXT: Name: matrix-lowered
11 ; YAML-NEXT: DebugLoc: { File: test.cpp, Line: 35, Column: 71 }
12 ; YAML-NEXT: Function: test_2leafs
13 ; YAML-NEXT: Args:
14 ; YAML-NEXT: - String: 'Lowered with '
15 ; YAML-NEXT: - NumStores: '4'
16 ; YAML-NEXT: - String: ' stores, '
17 ; YAML-NEXT: - NumLoads: '0'
18 ; YAML-NEXT: - String: ' loads, '
19 ; YAML-NEXT: - NumComputeOps: '0'
20 ; YAML-NEXT: - String: ' compute ops, '
21 ; YAML-NEXT: - NumExposedTransposes: '0'
22 ; YAML-NEXT: - String: ' exposed transposes'
23 ; YAML-NEXT: - String: ",\nadditionally "
24 ; YAML-NEXT: - NumStores: '0'
25 ; YAML-NEXT: - String: ' stores, '
26 ; YAML-NEXT: - NumLoads: '4'
27 ; YAML-NEXT: - String: ' loads, '
28 ; YAML-NEXT: - NumFPOps: '16'
29 ; YAML-NEXT: - String: ' compute ops'
30 ; YAML-NEXT: - String: ' are shared with other expressions'
31 ; YAML-NEXT: - String: |
33 ; YAML-NEXT: shared with remark at line 35 column 45 (transpose.2x4.double(column.major.loa…
34 ; YAML-NEXT: scalar)),
35 ; YAML-NEXT: addr %arg3,
36 ; YAML-NEXT: 10)
38 ; YAML-LABEL: --- !Passed
39 ; YAML-NEXT: Pass: lower-matrix-intrinsics
40 ; YAML-NEXT: Name: matrix-lowered
41 ; YAML-NEXT: DebugLoc: { File: test.cpp, Line: 35, Column: 45 }
42 ; YAML-NEXT: Function: test_2leafs
43 ; YAML-NEXT: Args:
44 ; YAML-NEXT: - String: 'Lowered with '
45 ; YAML-NEXT: - NumStores: '30'
46 ; YAML-NEXT: - String: ' stores, '
47 ; YAML-NEXT: - NumLoads: '45'
48 ; YAML-NEXT: - String: ' loads, '
49 ; YAML-NEXT: - NumComputeOps: '120'
50 ; YAML-NEXT: - String: ' compute ops, '
51 ; YAML-NEXT: - NumExposedTransposes: '0'
52 ; YAML-NEXT: - String: ' exposed transposes'
53 ; YAML-NEXT: - String: ",\nadditionally "
54 ; YAML-NEXT: - NumStores: '0'
55 ; YAML-NEXT: - String: ' stores, '
56 ; YAML-NEXT: - NumLoads: '4'
57 ; YAML-NEXT: - String: ' loads, '
58 ; YAML-NEXT: - NumFPOps: '16'
59 ; YAML-NEXT: - String: ' compute ops'
60 ; YAML-NEXT: - String: ' are shared with other expressions'
61 ; YAML-NEXT: - String: |
63 ; YAML-NEXT: fsub(
64 ; YAML-NEXT: column.major.load.4x15.double(addr %arg2, 20),
65 ; YAML-NEXT: multiply.4x2.2x15.double(
66 ; YAML-NEXT: shared with remark at line 35 column 71 (transpose.2x4.double(column.major.l…
67 ; YAML-NEXT: scalar)),
68 ; YAML-NEXT: column.major.load.2x15.double(addr %arg3, scalar))),
69 ; YAML-NEXT: addr %arg2,
70 ; YAML-NEXT: 10)
73 ; STDERR-LABEL: remark: test.cpp:35:71: Lowered with 4 stores, 0 loads, 0 compute ops,
74 ; STDERR-NEXT: additionally 0 stores, 4 loads, 16 compute ops are shared with other expressions
75 ; STDERR-NEXT: column.major.store.4x2.double(
76 ; STDERR-NEXT: shared with remark at line 35 column 45 (transpose.2x4.double(column.major.load.2x…
77 ; STDERR-NEXT: scalar)),
78 ; STDERR-NEXT: addr %arg3,
79 ; STDERR-NEXT: 10)
81 ; STDERR-LABEL: remark: test.cpp:35:45: Lowered with 30 stores, 45 loads, 120 compute ops,
82 ; STDERR-NEXT: additionally 0 stores, 4 loads, 16 compute ops are shared with other expressions
83 ; STDERR-NEXT: column.major.store.4x15.double(
84 ; STDERR-NEXT: fsub(
85 ; STDERR-NEXT: column.major.load.4x15.double(addr %arg2, 20),
86 ; STDERR-NEXT: multiply.4x2.2x15.double(
87 ; STDERR-NEXT: shared with remark at line 35 column 71 (transpose.2x4.double(column.major.load.…
88 ; STDERR-NEXT: scalar)),
89 ; STDERR-NEXT: column.major.load.2x15.double(addr %arg3, scalar))),
90 ; STDERR-NEXT: addr %arg2,
91 ; STDERR-NEXT: 10)
94 …%shared.load = tail call <8 x double> @llvm.matrix.column.major.load.v8f64.p0(ptr %arg1, i64 %stri…
95 …%shared.load.2 = tail call <30 x double> @llvm.matrix.column.major.load.v30f64.p0(ptr %arg3, i64 %…
96 …%tmp17 = tail call <8 x double> @llvm.matrix.transpose.v8f64(<8 x double> %shared.load, i32 2, i32…
97 …tail call void @llvm.matrix.column.major.store.v8f64.p0(<8 x double> %tmp17, ptr %arg3, i64 10, i1…
98 …%tmp18 = tail call <60 x double> @llvm.matrix.column.major.load.v60f64.p0(ptr %arg2, i64 20, i1 fa…
99 …%tmp48 = tail call <60 x double> @llvm.matrix.multiply.v60f64.v8f64.v30f64(<8 x double> %tmp17, <3…
101 …tail call void @llvm.matrix.column.major.store.v60f64.p0(<60 x double> %tmp49, ptr %arg2, i64 10, …
105 declare <8 x double> @llvm.matrix.transpose.v8f64(<8 x double>, i32 immarg, i32 immarg)
106 declare <8 x double> @llvm.matrix.column.major.load.v8f64.p0(ptr, i64, i1 immarg, i32 immarg, i32 i…
107 declare <30 x double> @llvm.matrix.column.major.load.v30f64.p0(ptr, i64, i1 immarg, i32 immarg, i32…
108 declare <60 x double> @llvm.matrix.column.major.load.v60f64.p0(ptr, i64, i1 immarg, i32 immarg, i32…
109 declare void @llvm.matrix.column.major.store.v60f64.p0(<60 x double>, ptr writeonly, i64, i1 immarg…
110 declare void @llvm.matrix.column.major.store.v8f64.p0(<8 x double>, ptr writeonly, i64, i1 immarg, …
111 declare <60 x double> @llvm.matrix.multiply.v60f64.v8f64.v30f64(<8 x double>, <30 x double>, i32 im…