Matthias Braun | 6b898be | 2017-08-02 00:28:10 +0000 | [diff] [blame] | 1 | ; RUN: llc < %s -mtriple=i686-- -mattr=+sse,-sse2 |
Anders Carlsson | 1699ad9 | 2008-10-07 16:14:11 +0000 | [diff] [blame] | 2 | |
| 3 | define <4 x float> @f(float %w) nounwind { |
| 4 | entry: |
Nikita Popov | 2f448bf | 2022-06-22 14:33:12 +0200 | [diff] [blame] | 5 | %retval = alloca <4 x float> ; <ptr> [#uses=2] |
| 6 | %w.addr = alloca float ; <ptr> [#uses=2] |
| 7 | %.compoundliteral = alloca <4 x float> ; <ptr> [#uses=2] |
| 8 | store float %w, ptr %w.addr |
| 9 | %tmp = load float, ptr %w.addr ; <float> [#uses=1] |
Anders Carlsson | 1699ad9 | 2008-10-07 16:14:11 +0000 | [diff] [blame] | 10 | %0 = insertelement <4 x float> undef, float %tmp, i32 0 ; <<4 x float>> [#uses=1] |
| 11 | %1 = insertelement <4 x float> %0, float 0.000000e+00, i32 1 ; <<4 x float>> [#uses=1] |
| 12 | %2 = insertelement <4 x float> %1, float 0.000000e+00, i32 2 ; <<4 x float>> [#uses=1] |
| 13 | %3 = insertelement <4 x float> %2, float 0.000000e+00, i32 3 ; <<4 x float>> [#uses=1] |
Nikita Popov | 2f448bf | 2022-06-22 14:33:12 +0200 | [diff] [blame] | 14 | store <4 x float> %3, ptr %.compoundliteral |
| 15 | %tmp1 = load <4 x float>, ptr %.compoundliteral ; <<4 x float>> [#uses=1] |
| 16 | store <4 x float> %tmp1, ptr %retval |
Anders Carlsson | 1699ad9 | 2008-10-07 16:14:11 +0000 | [diff] [blame] | 17 | br label %return |
| 18 | |
| 19 | return: ; preds = %entry |
Nikita Popov | 2f448bf | 2022-06-22 14:33:12 +0200 | [diff] [blame] | 20 | %4 = load <4 x float>, ptr %retval ; <<4 x float>> [#uses=1] |
Anders Carlsson | 1699ad9 | 2008-10-07 16:14:11 +0000 | [diff] [blame] | 21 | ret <4 x float> %4 |
| 22 | } |