| !===----------------------------------------------------------------------===! | |
| ! This directory can be used to add Integration tests involving multiple | |
| ! stages of the compiler (for eg. from Fortran to LLVM IR). It should not | |
| ! contain executable tests. We should only add tests here sparingly and only | |
| ! if there is no other way to test. Repeat this message in each test that is | |
| ! added to this directory and sub-directories. | |
| !===----------------------------------------------------------------------===! | |
| ! RUN: %flang_fc1 -emit-llvm %s -o - | FileCheck %s | |
| ! REQUIRES: target=powerpc{{.*}} | |
| ! The shift amount of vec_sld must reach PowerPC lowering as a constant even | |
| ! when it is written as an element of a named constant (which the front end | |
| ! may keep in designator form for storage association). | |
| subroutine test_sld_parameter(arg1, arg2, r) | |
| vector(integer(4)) :: arg1, arg2, r | |
| integer, parameter :: sh(1) = [2] | |
| r = vec_sld(arg1, arg2, sh(1)) | |
| end subroutine | |
| ! CHECK-LABEL: @test_sld_parameter_ | |
| ! CHECK: shufflevector <16 x i8> %{{[0-9]+}}, <16 x i8> %{{[0-9]+}}, <16 x i32> |