You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[SVE] Extend getMemVTFromNode to cover the sret variants of sve.ld2/3/4.
This enables the use of reg+imm addressing modes to match the
non-sret variants of these intrinsics.
Differential Revision: https://reviews.llvm.org/D132392
%base = getelementptr <vscale x 8 x half>, <vscale x 8 x half>* %addr, i6421
276
261
%base_ptr = bitcast <vscale x 8 x half>* %basetohalf *
@@ -281,8 +266,7 @@ define { <vscale x 8 x half>, <vscale x 8 x half>, <vscale x 8 x half> } @ld3.nx
281
266
define { <vscale x 8 x bfloat>, <vscale x 8 x bfloat>, <vscale x 8 x bfloat> } @ld3.nxv24bf16(<vscale x 8 x i1> %Pg, <vscale x 8 x bfloat> *%addr) #0 {
%base = getelementptr <vscale x 2 x double>, <vscale x 2 x double>* %addr, i64 -24
338
318
%base_ptr = bitcast <vscale x 2 x double>* %basetodouble *
@@ -344,8 +324,7 @@ define { <vscale x 2 x double>, <vscale x 2 x double>, <vscale x 2 x double> } @
344
324
define { <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 16 x i8> } @ld4.nxv64i8(<vscale x 16 x i1> %Pg, <vscale x 16 x i8> *%addr) {
%base = getelementptr <vscale x 16 x i8>, <vscale x 16 x i8>* %addr, i644
351
330
%base_ptr = bitcast <vscale x 16 x i8>* %basetoi8 *
@@ -356,8 +335,7 @@ define { <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 1
356
335
define { <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 16 x i8> } @ld4.nxv64i8_lower_bound(<vscale x 16 x i1> %Pg, <vscale x 16 x i8> *%addr) {
%base = getelementptr <vscale x 16 x i8>, <vscale x 16 x i8>* %addr, i64 -32
363
341
%base_ptr = bitcast <vscale x 16 x i8>* %basetoi8 *
@@ -368,8 +346,7 @@ define { <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 1
368
346
define { <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 16 x i8> } @ld4.nxv64i8_upper_bound(<vscale x 16 x i1> %Pg, <vscale x 16 x i8> *%addr) {
%base = getelementptr <vscale x 16 x i8>, <vscale x 16 x i8>* %addr, i6428
375
352
%base_ptr = bitcast <vscale x 16 x i8>* %basetoi8 *
@@ -455,8 +432,7 @@ define { <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 16 x i8>, <vscale x 1
455
432
define { <vscale x 8 x i16>, <vscale x 8 x i16>, <vscale x 8 x i16>, <vscale x 8 x i16> } @ld4.nxv32i16(<vscale x 8 x i1> %Pg, <vscale x 8 x i16> *%addr) {
%base = getelementptr <vscale x 8 x i16>, <vscale x 8 x i16>* %addr, i648
462
438
%base_ptr = bitcast <vscale x 8 x i16>* %basetoi16 *
@@ -467,8 +443,7 @@ define { <vscale x 8 x i16>, <vscale x 8 x i16>, <vscale x 8 x i16>, <vscale x 8
467
443
define { <vscale x 8 x half>, <vscale x 8 x half>, <vscale x 8 x half>, <vscale x 8 x half> } @ld4.nxv32f16(<vscale x 8 x i1> %Pg, <vscale x 8 x half> *%addr) {
%base = getelementptr <vscale x 8 x half>, <vscale x 8 x half>* %addr, i6428
474
449
%base_ptr = bitcast <vscale x 8 x half>* %basetohalf *
@@ -479,8 +454,7 @@ define { <vscale x 8 x half>, <vscale x 8 x half>, <vscale x 8 x half>, <vscale
479
454
define { <vscale x 8 x bfloat>, <vscale x 8 x bfloat>, <vscale x 8 x bfloat>, <vscale x 8 x bfloat> } @ld4.nxv32bf16(<vscale x 8 x i1> %Pg, <vscale x 8 x bfloat> *%addr) #0 {
%base = getelementptr <vscale x 8 x bfloat>, <vscale x 8 x bfloat>* %addr, i64 -32
486
460
%base_ptr = bitcast <vscale x 8 x bfloat>* %baseto bfloat *
@@ -492,8 +466,7 @@ define { <vscale x 8 x bfloat>, <vscale x 8 x bfloat>, <vscale x 8 x bfloat>, <v
492
466
define { <vscale x 4 x i32>, <vscale x 4 x i32>, <vscale x 4 x i32>, <vscale x 4 x i32> } @ld4.nxv16i32(<vscale x 4 x i1> %Pg, <vscale x 4 x i32> *%addr) {
%base = getelementptr <vscale x 4 x i32>, <vscale x 4 x i32>* %addr, i6428
499
472
%base_ptr = bitcast <vscale x 4 x i32>* %basetoi32 *
@@ -504,8 +477,7 @@ define { <vscale x 4 x i32>, <vscale x 4 x i32>, <vscale x 4 x i32>, <vscale x 4
504
477
define { <vscale x 4 x float>, <vscale x 4 x float>, <vscale x 4 x float>, <vscale x 4 x float> } @ld4.nxv16f32(<vscale x 4 x i1> %Pg, <vscale x 4 x float>* %addr) {
%base = getelementptr <vscale x 4 x float>, <vscale x 4 x float>* %addr, i64 -32
511
483
%base_ptr = bitcast <vscale x 4 x float>* %basetofloat *
@@ -517,8 +489,7 @@ define { <vscale x 4 x float>, <vscale x 4 x float>, <vscale x 4 x float>, <vsca
517
489
define { <vscale x 2 x i64>, <vscale x 2 x i64>, <vscale x 2 x i64>, <vscale x 2 x i64> } @ld4.nxv8i64(<vscale x 2 x i1> %Pg, <vscale x 2 x i64> *%addr) {
%base = getelementptr <vscale x 2 x i64>, <vscale x 2 x i64>* %addr, i6428
524
495
%base_ptr = bitcast <vscale x 2 x i64>* %basetoi64 *
@@ -529,8 +500,7 @@ define { <vscale x 2 x i64>, <vscale x 2 x i64>, <vscale x 2 x i64>, <vscale x 2
529
500
define { <vscale x 2 x double>, <vscale x 2 x double>, <vscale x 2 x double>, <vscale x 2 x double> } @ld4.nxv8f64(<vscale x 2 x i1> %Pg, <vscale x 2 x double> *%addr) {
0 commit comments