; NOTE: Assertions have been autogenerated by utils/update_analyze_test_checks.py ; RUN: opt -passes="print" 2>&1 -disable-output -cost-kind=all -mtriple=aarch64 < %s | FileCheck %s target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" define void @i1() { ; CHECK-LABEL: 'i1' ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c = add i1 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d = sub i1 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e = mul i1 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f = ashr i1 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g = lshr i1 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h = shl i1 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i = and i1 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j = or i1 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k = xor i1 undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; %c = add i1 undef, undef %d = sub i1 undef, undef %e = mul i1 undef, undef %f = ashr i1 undef, undef %g = lshr i1 undef, undef %h = shl i1 undef, undef %i = and i1 undef, undef %j = or i1 undef, undef %k = xor i1 undef, undef ret void } define void @i8() { ; CHECK-LABEL: 'i8' ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c = add i8 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d = sub i8 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e = mul i8 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f = ashr i8 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g = lshr i8 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h = shl i8 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i = and i8 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j = or i8 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k = xor i8 undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; %c = add i8 undef, undef %d = sub i8 undef, undef %e = mul i8 undef, undef %f = ashr i8 undef, undef %g = lshr i8 undef, undef %h = shl i8 undef, undef %i = and i8 undef, undef %j = or i8 undef, undef %k = xor i8 undef, undef ret void } define void @i16() { ; CHECK-LABEL: 'i16' ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c = add i16 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d = sub i16 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e = mul i16 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f = ashr i16 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g = lshr i16 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h = shl i16 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i = and i16 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j = or i16 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k = xor i16 undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; %c = add i16 undef, undef %d = sub i16 undef, undef %e = mul i16 undef, undef %f = ashr i16 undef, undef %g = lshr i16 undef, undef %h = shl i16 undef, undef %i = and i16 undef, undef %j = or i16 undef, undef %k = xor i16 undef, undef ret void } define void @i32() { ; CHECK-LABEL: 'i32' ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c = add i32 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d = sub i32 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e = mul i32 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f = ashr i32 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g = lshr i32 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h = shl i32 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i = and i32 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j = or i32 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k = xor i32 undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; %c = add i32 undef, undef %d = sub i32 undef, undef %e = mul i32 undef, undef %f = ashr i32 undef, undef %g = lshr i32 undef, undef %h = shl i32 undef, undef %i = and i32 undef, undef %j = or i32 undef, undef %k = xor i32 undef, undef ret void } define void @i64() { ; CHECK-LABEL: 'i64' ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c = add i64 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d = sub i64 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e = mul i64 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f = ashr i64 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g = lshr i64 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h = shl i64 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i = and i64 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j = or i64 undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k = xor i64 undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; %c = add i64 undef, undef %d = sub i64 undef, undef %e = mul i64 undef, undef %f = ashr i64 undef, undef %g = lshr i64 undef, undef %h = shl i64 undef, undef %i = and i64 undef, undef %j = or i64 undef, undef %k = xor i64 undef, undef ret void } define void @vi8() { ; CHECK-LABEL: 'vi8' ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c2 = add <2 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d2 = sub <2 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e2 = mul <2 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f2 = ashr <2 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g2 = lshr <2 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h2 = shl <2 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i2 = and <2 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j2 = or <2 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k2 = xor <2 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c4 = add <4 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d4 = sub <4 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e4 = mul <4 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f4 = ashr <4 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g4 = lshr <4 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h4 = shl <4 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i4 = and <4 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j4 = or <4 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k4 = xor <4 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c8 = add <8 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d8 = sub <8 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e8 = mul <8 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f8 = ashr <8 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g8 = lshr <8 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h8 = shl <8 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i8 = and <8 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j8 = or <8 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k8 = xor <8 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c16 = add <16 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d16 = sub <16 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e16 = mul <16 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f16 = ashr <16 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g16 = lshr <16 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h16 = shl <16 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i16 = and <16 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j16 = or <16 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k16 = xor <16 x i8> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; %c2 = add <2 x i8> undef, undef %d2 = sub <2 x i8> undef, undef %e2 = mul <2 x i8> undef, undef %f2 = ashr <2 x i8> undef, undef %g2 = lshr <2 x i8> undef, undef %h2 = shl <2 x i8> undef, undef %i2 = and <2 x i8> undef, undef %j2 = or <2 x i8> undef, undef %k2 = xor <2 x i8> undef, undef %c4 = add <4 x i8> undef, undef %d4 = sub <4 x i8> undef, undef %e4 = mul <4 x i8> undef, undef %f4 = ashr <4 x i8> undef, undef %g4 = lshr <4 x i8> undef, undef %h4 = shl <4 x i8> undef, undef %i4 = and <4 x i8> undef, undef %j4 = or <4 x i8> undef, undef %k4 = xor <4 x i8> undef, undef %c8 = add <8 x i8> undef, undef %d8 = sub <8 x i8> undef, undef %e8 = mul <8 x i8> undef, undef %f8 = ashr <8 x i8> undef, undef %g8 = lshr <8 x i8> undef, undef %h8 = shl <8 x i8> undef, undef %i8 = and <8 x i8> undef, undef %j8 = or <8 x i8> undef, undef %k8 = xor <8 x i8> undef, undef %c16 = add <16 x i8> undef, undef %d16 = sub <16 x i8> undef, undef %e16 = mul <16 x i8> undef, undef %f16 = ashr <16 x i8> undef, undef %g16 = lshr <16 x i8> undef, undef %h16 = shl <16 x i8> undef, undef %i16 = and <16 x i8> undef, undef %j16 = or <16 x i8> undef, undef %k16 = xor <16 x i8> undef, undef ret void } define void @vi16() { ; CHECK-LABEL: 'vi16' ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c2 = add <2 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d2 = sub <2 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e2 = mul <2 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f2 = ashr <2 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g2 = lshr <2 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h2 = shl <2 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i2 = and <2 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j2 = or <2 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k2 = xor <2 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c4 = add <4 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d4 = sub <4 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e4 = mul <4 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f4 = ashr <4 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g4 = lshr <4 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h4 = shl <4 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i4 = and <4 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j4 = or <4 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k4 = xor <4 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c8 = add <8 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d8 = sub <8 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e8 = mul <8 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f8 = ashr <8 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g8 = lshr <8 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h8 = shl <8 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i8 = and <8 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j8 = or <8 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k8 = xor <8 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %c16 = add <16 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %d16 = sub <16 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %e16 = mul <16 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %f16 = ashr <16 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %g16 = lshr <16 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %h16 = shl <16 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %i16 = and <16 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %j16 = or <16 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %k16 = xor <16 x i16> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; %c2 = add <2 x i16> undef, undef %d2 = sub <2 x i16> undef, undef %e2 = mul <2 x i16> undef, undef %f2 = ashr <2 x i16> undef, undef %g2 = lshr <2 x i16> undef, undef %h2 = shl <2 x i16> undef, undef %i2 = and <2 x i16> undef, undef %j2 = or <2 x i16> undef, undef %k2 = xor <2 x i16> undef, undef %c4 = add <4 x i16> undef, undef %d4 = sub <4 x i16> undef, undef %e4 = mul <4 x i16> undef, undef %f4 = ashr <4 x i16> undef, undef %g4 = lshr <4 x i16> undef, undef %h4 = shl <4 x i16> undef, undef %i4 = and <4 x i16> undef, undef %j4 = or <4 x i16> undef, undef %k4 = xor <4 x i16> undef, undef %c8 = add <8 x i16> undef, undef %d8 = sub <8 x i16> undef, undef %e8 = mul <8 x i16> undef, undef %f8 = ashr <8 x i16> undef, undef %g8 = lshr <8 x i16> undef, undef %h8 = shl <8 x i16> undef, undef %i8 = and <8 x i16> undef, undef %j8 = or <8 x i16> undef, undef %k8 = xor <8 x i16> undef, undef %c16 = add <16 x i16> undef, undef %d16 = sub <16 x i16> undef, undef %e16 = mul <16 x i16> undef, undef %f16 = ashr <16 x i16> undef, undef %g16 = lshr <16 x i16> undef, undef %h16 = shl <16 x i16> undef, undef %i16 = and <16 x i16> undef, undef %j16 = or <16 x i16> undef, undef %k16 = xor <16 x i16> undef, undef ret void } define void @vi32() { ; CHECK-LABEL: 'vi32' ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c2 = add <2 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d2 = sub <2 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e2 = mul <2 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f2 = ashr <2 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g2 = lshr <2 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h2 = shl <2 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i2 = and <2 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j2 = or <2 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k2 = xor <2 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c4 = add <4 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d4 = sub <4 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %e4 = mul <4 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f4 = ashr <4 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g4 = lshr <4 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h4 = shl <4 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i4 = and <4 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j4 = or <4 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k4 = xor <4 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %c8 = add <8 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %d8 = sub <8 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %e8 = mul <8 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %f8 = ashr <8 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %g8 = lshr <8 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %h8 = shl <8 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %i8 = and <8 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %j8 = or <8 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %k8 = xor <8 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %c16 = add <16 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %d16 = sub <16 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %e16 = mul <16 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %f16 = ashr <16 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %g16 = lshr <16 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %h16 = shl <16 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %i16 = and <16 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %j16 = or <16 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %k16 = xor <16 x i32> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; %c2 = add <2 x i32> undef, undef %d2 = sub <2 x i32> undef, undef %e2 = mul <2 x i32> undef, undef %f2 = ashr <2 x i32> undef, undef %g2 = lshr <2 x i32> undef, undef %h2 = shl <2 x i32> undef, undef %i2 = and <2 x i32> undef, undef %j2 = or <2 x i32> undef, undef %k2 = xor <2 x i32> undef, undef %c4 = add <4 x i32> undef, undef %d4 = sub <4 x i32> undef, undef %e4 = mul <4 x i32> undef, undef %f4 = ashr <4 x i32> undef, undef %g4 = lshr <4 x i32> undef, undef %h4 = shl <4 x i32> undef, undef %i4 = and <4 x i32> undef, undef %j4 = or <4 x i32> undef, undef %k4 = xor <4 x i32> undef, undef %c8 = add <8 x i32> undef, undef %d8 = sub <8 x i32> undef, undef %e8 = mul <8 x i32> undef, undef %f8 = ashr <8 x i32> undef, undef %g8 = lshr <8 x i32> undef, undef %h8 = shl <8 x i32> undef, undef %i8 = and <8 x i32> undef, undef %j8 = or <8 x i32> undef, undef %k8 = xor <8 x i32> undef, undef %c16 = add <16 x i32> undef, undef %d16 = sub <16 x i32> undef, undef %e16 = mul <16 x i32> undef, undef %f16 = ashr <16 x i32> undef, undef %g16 = lshr <16 x i32> undef, undef %h16 = shl <16 x i32> undef, undef %i16 = and <16 x i32> undef, undef %j16 = or <16 x i32> undef, undef %k16 = xor <16 x i32> undef, undef ret void } define void @vi64() { ; CHECK-LABEL: 'vi64' ; CHECK-NEXT: Cost Model: Found costs of 1 for: %c2 = add <2 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %d2 = sub <2 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:14 CodeSize:1 Lat:1 SizeLat:1 for: %e2 = mul <2 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %f2 = ashr <2 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %g2 = lshr <2 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %h2 = shl <2 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %i2 = and <2 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %j2 = or <2 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of 1 for: %k2 = xor <2 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %c4 = add <4 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %d4 = sub <4 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:28 CodeSize:1 Lat:1 SizeLat:1 for: %e4 = mul <4 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %f4 = ashr <4 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %g4 = lshr <4 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %h4 = shl <4 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %i4 = and <4 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %j4 = or <4 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:1 Lat:1 SizeLat:1 for: %k4 = xor <4 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %c8 = add <8 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %d8 = sub <8 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:56 CodeSize:1 Lat:1 SizeLat:1 for: %e8 = mul <8 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %f8 = ashr <8 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %g8 = lshr <8 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %h8 = shl <8 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %i8 = and <8 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %j8 = or <8 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:4 CodeSize:1 Lat:1 SizeLat:1 for: %k8 = xor <8 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:1 Lat:1 SizeLat:1 for: %c16 = add <16 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:1 Lat:1 SizeLat:1 for: %d16 = sub <16 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:112 CodeSize:1 Lat:1 SizeLat:1 for: %e16 = mul <16 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:1 Lat:1 SizeLat:1 for: %f16 = ashr <16 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:1 Lat:1 SizeLat:1 for: %g16 = lshr <16 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:1 Lat:1 SizeLat:1 for: %h16 = shl <16 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:1 Lat:1 SizeLat:1 for: %i16 = and <16 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:1 Lat:1 SizeLat:1 for: %j16 = or <16 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:1 Lat:1 SizeLat:1 for: %k16 = xor <16 x i64> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; %c2 = add <2 x i64> undef, undef %d2 = sub <2 x i64> undef, undef %e2 = mul <2 x i64> undef, undef %f2 = ashr <2 x i64> undef, undef %g2 = lshr <2 x i64> undef, undef %h2 = shl <2 x i64> undef, undef %i2 = and <2 x i64> undef, undef %j2 = or <2 x i64> undef, undef %k2 = xor <2 x i64> undef, undef %c4 = add <4 x i64> undef, undef %d4 = sub <4 x i64> undef, undef %e4 = mul <4 x i64> undef, undef %f4 = ashr <4 x i64> undef, undef %g4 = lshr <4 x i64> undef, undef %h4 = shl <4 x i64> undef, undef %i4 = and <4 x i64> undef, undef %j4 = or <4 x i64> undef, undef %k4 = xor <4 x i64> undef, undef %c8 = add <8 x i64> undef, undef %d8 = sub <8 x i64> undef, undef %e8 = mul <8 x i64> undef, undef %f8 = ashr <8 x i64> undef, undef %g8 = lshr <8 x i64> undef, undef %h8 = shl <8 x i64> undef, undef %i8 = and <8 x i64> undef, undef %j8 = or <8 x i64> undef, undef %k8 = xor <8 x i64> undef, undef %c16 = add <16 x i64> undef, undef %d16 = sub <16 x i64> undef, undef %e16 = mul <16 x i64> undef, undef %f16 = ashr <16 x i64> undef, undef %g16 = lshr <16 x i64> undef, undef %h16 = shl <16 x i64> undef, undef %i16 = and <16 x i64> undef, undef %j16 = or <16 x i64> undef, undef %k16 = xor <16 x i64> undef, undef ret void }