Evan Cheng | a4025df | 2009-12-01 00:44:45 +0000 | [diff] [blame] | 1 | ; RUN: llc -mtriple=armv7-eabi -mcpu=cortex-a8 < %s |
| 2 | ; PR5614 |
| 3 | |
| 4 | %"als" = type { i32 (...)** } |
| 5 | %"av" = type { %"als" } |
| 6 | %"c" = type { %"lsm", %"Vec3", %"av"*, float, i8, float, %"lsm", i8, %"Vec3", %"Vec3", %"Vec3", float, float, float, %"Vec3", %"Vec3" } |
| 7 | %"lsm" = type { %"als", %"Vec3", %"Vec3", %"Vec3", %"Vec3" } |
| 8 | %"Vec3" = type { float, float, float } |
| 9 | |
| 10 | define arm_aapcs_vfpcc void @foo(%"c"* %this, %"Vec3"* nocapture %adjustment) { |
| 11 | entry: |
| 12 | switch i32 undef, label %return [ |
| 13 | i32 1, label %bb |
| 14 | i32 2, label %bb72 |
| 15 | i32 3, label %bb31 |
| 16 | i32 4, label %bb79 |
| 17 | i32 5, label %bb104 |
| 18 | ] |
| 19 | |
| 20 | bb: ; preds = %entry |
| 21 | ret void |
| 22 | |
| 23 | bb31: ; preds = %entry |
| 24 | %0 = call arm_aapcs_vfpcc %"Vec3" undef(%"lsm"* undef) ; <%"Vec3"> [#uses=1] |
| 25 | %mrv_gr69 = extractvalue %"Vec3" %0, 1 ; <float> [#uses=1] |
| 26 | %1 = fsub float %mrv_gr69, undef ; <float> [#uses=1] |
| 27 | store float %1, float* undef, align 4 |
| 28 | ret void |
| 29 | |
| 30 | bb72: ; preds = %entry |
| 31 | ret void |
| 32 | |
| 33 | bb79: ; preds = %entry |
| 34 | ret void |
| 35 | |
| 36 | bb104: ; preds = %entry |
| 37 | ret void |
| 38 | |
| 39 | return: ; preds = %entry |
| 40 | ret void |
| 41 | } |