|
| 1 | +;=========================== begin_copyright_notice ============================ |
| 2 | +; |
| 3 | +; Copyright (C) 2025 Intel Corporation |
| 4 | +; |
| 5 | +; SPDX-License-Identifier: MIT |
| 6 | +; |
| 7 | +;============================ end_copyright_notice ============================= |
| 8 | + |
1 | 9 | ; REQUIRES: regkeys |
2 | 10 | ; RUN: igc_opt -S --igc-vectorizer -dce --regkey=VectorizerAllowSelect=1 --regkey=VectorizerAllowCMP=1 --regkey=VectorizerAllowMAXNUM=1 --regkey=VectorizerAllowWAVEALL=1 --regkey=VectorizerDepWindowMultiplier=4 < %s 2>&1 | FileCheck %s |
3 | 11 |
|
|
13 | 21 | ; CHECK: [[insrt_5:%.*]] = insertelement <8 x float> [[insrt_4]] |
14 | 22 | ; CHECK: [[insrt_6:%.*]] = insertelement <8 x float> [[insrt_5]], float [[fmul2]], i32 6 |
15 | 23 | ; CHECK: [[insrt_7:%.*]] = insertelement <8 x float> [[insrt_6]] |
16 | | -; CHECK: %vectorized_binary = fmul <8 x float> %vector38, <float 1.250000e-01, float 0x3FF7154760000000, float 0x3FF7154760000000, float 0x3FF7154760000000, float 0x3FF7154760000000, float 0x3FF7154760000000, float 0x3FF7154760000000, float 0x3FF7154760000000> |
17 | | -; CHECK: %vector_extract39 = extractelement <8 x float> %vectorized_binary, i32 0 |
18 | | -; CHECK: %vector_extract40 = extractelement <8 x float> %vectorized_binary, i32 1 |
19 | | -; CHECK: %vector_extract41 = extractelement <8 x float> %vectorized_binary, i32 2 |
20 | | -; CHECK: %vector_extract42 = extractelement <8 x float> %vectorized_binary, i32 3 |
21 | | -; CHECK: %vector_extract43 = extractelement <8 x float> %vectorized_binary, i32 4 |
22 | | -; CHECK: %vector_extract44 = extractelement <8 x float> %vectorized_binary, i32 5 |
23 | | -; CHECK: %vector_extract45 = extractelement <8 x float> %vectorized_binary, i32 6 |
24 | | -; CHECK: %vector_extract46 = extractelement <8 x float> %vectorized_binary, i32 7 |
| 24 | +; CHECK: %vectorized_binary = fmul <8 x float> [[insrt_7]], <float 1.250000e-01, float 0x3FF7154760000000, float 0x3FF7154760000000, float 0x3FF7154760000000, float 0x3FF7154760000000, float 0x3FF7154760000000, float 0x3FF7154760000000, float 0x3FF7154760000000> |
| 25 | +; CHECK: [[extrct_0:%.*]] = extractelement <8 x float> %vectorized_binary, i32 0 |
| 26 | +; CHECK: [[extrct_1:%.*]] = extractelement <8 x float> %vectorized_binary, i32 1 |
| 27 | +; CHECK: [[extrct_2:%.*]] = extractelement <8 x float> %vectorized_binary, i32 2 |
| 28 | +; CHECK: [[extrct_3:%.*]] = extractelement <8 x float> %vectorized_binary, i32 3 |
| 29 | +; CHECK: [[extrct_4:%.*]] = extractelement <8 x float> %vectorized_binary, i32 4 |
| 30 | +; CHECK: [[extrct_5:%.*]] = extractelement <8 x float> %vectorized_binary, i32 5 |
| 31 | +; CHECK: [[extrct_6:%.*]] = extractelement <8 x float> %vectorized_binary, i32 6 |
| 32 | +; CHECK: [[extrct_7:%.*]] = extractelement <8 x float> %vectorized_binary, i32 7 |
25 | 33 | ; CHECK: %19 = icmp slt i32 %2, 1 |
26 | 34 | ; CHECK: %20 = icmp slt i32 1, %.pn1482 |
27 | 35 | ; CHECK: %21 = icmp slt i32 %3, %.pn1482 |
28 | 36 | ; CHECK: %22 = icmp slt i32 %4, 1 |
29 | 37 | ; CHECK: %23 = icmp slt i32 %5, 1 |
30 | 38 | ; CHECK: %24 = icmp slt i32 %6, %.pn1482 |
31 | | -; CHECK: %25 = select i1 %19, float 0xFFF0000000000000, float %vector_extract39 |
32 | | -; CHECK: %26 = select i1 %20, float 0xFFF0000000000000, float %vector_extract40 |
33 | | -; CHECK: %27 = select i1 %21, float 0xFFF0000000000000, float %vector_extract41 |
34 | | -; CHECK: %28 = select i1 %20, float 0xFFF0000000000000, float %vector_extract42 |
35 | | -; CHECK: %29 = select i1 %22, float 0xFFF0000000000000, float %vector_extract43 |
36 | | -; CHECK: %30 = select i1 %23, float 0xFFF0000000000000, float %vector_extract44 |
37 | | -; CHECK: %31 = select i1 %24, float 0xFFF0000000000000, float %vector_extract45 |
38 | | -; CHECK: %32 = select i1 %20, float 0xFFF0000000000000, float %vector_extract46 |
| 39 | +; CHECK: %25 = select i1 %19, float 0xFFF0000000000000, float [[extrct_0]] |
| 40 | +; CHECK: %26 = select i1 %20, float 0xFFF0000000000000, float [[extrct_1]] |
| 41 | +; CHECK: %27 = select i1 %21, float 0xFFF0000000000000, float [[extrct_2]] |
| 42 | +; CHECK: %28 = select i1 %20, float 0xFFF0000000000000, float [[extrct_3]] |
| 43 | +; CHECK: %29 = select i1 %22, float 0xFFF0000000000000, float [[extrct_4]] |
| 44 | +; CHECK: %30 = select i1 %23, float 0xFFF0000000000000, float [[extrct_5]] |
| 45 | +; CHECK: %31 = select i1 %24, float 0xFFF0000000000000, float [[extrct_6]] |
| 46 | +; CHECK: %32 = select i1 %20, float 0xFFF0000000000000, float [[extrct_7]] |
39 | 47 |
|
40 | 48 |
|
41 | 49 | ; ModuleID = 'reduced.ll' |
|
0 commit comments