blob: 8db4ba318329052fc34d7844f3f1293f0d130052 [file] [log] [blame]
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5
; RUN: opt %s -passes="function(scalarizer)" -S | FileCheck %s
; Test to make sure that struct return intrinsics that are not `isTriviallyScalarizable` do not get scalarized.
define <4 x float> @test_(<4 x float> %Val) {
; CHECK-LABEL: define <4 x float> @test_(
; CHECK-SAME: <4 x float> [[VAL:%.*]]) {
; CHECK-NEXT: [[R:%.*]] = call { <4 x float>, <4 x float> } @llvm.sincos.v4f32(<4 x float> [[VAL]])
; CHECK-NEXT: [[EL:%.*]] = extractvalue { <4 x float>, <4 x float> } [[R]], 0
; CHECK-NEXT: ret <4 x float> [[EL]]
;
%r = call { <4 x float>, <4 x float> } @llvm.sincos.v4f32(<4 x float> %Val)
%el = extractvalue { <4 x float>, <4 x float> } %r, 0
ret <4 x float> %el
}