Evan Cheng | f19384d | 2010-05-18 21:31:17 +0000 | [diff] [blame] | 1 | ; RUN: llc < %s -mtriple=armv7-apple-darwin | FileCheck %s -check-prefix=ARM |
| 2 | ; RUN: llc < %s -mtriple=thumbv7-apple-darwin | FileCheck %s -check-prefix=THUMB |
| 3 | ; rdar://7998649 |
| 4 | |
| 5 | %struct.foo = type { i64, i64 } |
| 6 | |
Tim Northover | ce6538c | 2014-05-30 08:59:55 +0000 | [diff] [blame] | 7 | define zeroext i8 @t(%struct.foo* %this, i1 %tst) noreturn optsize { |
Evan Cheng | f19384d | 2010-05-18 21:31:17 +0000 | [diff] [blame] | 8 | entry: |
Stephen Lin | d24ab20 | 2013-07-14 06:24:09 +0000 | [diff] [blame] | 9 | ; ARM-LABEL: t: |
Tim Northover | ce6538c | 2014-05-30 08:59:55 +0000 | [diff] [blame] | 10 | ; ARM-DAG: mov r[[ADDR:[0-9]+]], #8 |
| 11 | ; ARM-DAG: mov [[VAL:r[0-9]+]], #0 |
| 12 | ; ARM: str [[VAL]], [r[[ADDR]]], r0 |
Evan Cheng | f19384d | 2010-05-18 21:31:17 +0000 | [diff] [blame] | 13 | |
Stephen Lin | d24ab20 | 2013-07-14 06:24:09 +0000 | [diff] [blame] | 14 | ; THUMB-LABEL: t: |
Tim Northover | ce6538c | 2014-05-30 08:59:55 +0000 | [diff] [blame] | 15 | ; THUMB-DAG: movs r[[ADDR:[0-9]+]], #8 |
| 16 | ; THUMB-DAG: movs [[VAL:r[0-9]+]], #0 |
| 17 | ; THUMB-NOT: str {{[a-z0-9]+}}, [{{[a-z0-9]+}}], {{[a-z0-9]+}} |
| 18 | ; THUMB: str [[VAL]], [r[[ADDR]]] |
David Blaikie | 79e6c74 | 2015-02-27 19:29:02 +0000 | [diff] [blame] | 19 | %0 = getelementptr inbounds %struct.foo, %struct.foo* %this, i32 0, i32 1 ; <i64*> [#uses=1] |
Chris Lattner | 1c42a4d | 2011-04-09 02:31:26 +0000 | [diff] [blame] | 20 | store i32 0, i32* inttoptr (i32 8 to i32*), align 8 |
Tim Northover | ce6538c | 2014-05-30 08:59:55 +0000 | [diff] [blame] | 21 | br i1 %tst, label %bb.nph96, label %bb3 |
Evan Cheng | f19384d | 2010-05-18 21:31:17 +0000 | [diff] [blame] | 22 | |
| 23 | bb3: ; preds = %entry |
David Blaikie | a79ac14 | 2015-02-27 21:17:42 +0000 | [diff] [blame] | 24 | %1 = load i64, i64* %0, align 4 ; <i64> [#uses=0] |
Tim Northover | ce6538c | 2014-05-30 08:59:55 +0000 | [diff] [blame] | 25 | ret i8 42 |
Evan Cheng | f19384d | 2010-05-18 21:31:17 +0000 | [diff] [blame] | 26 | |
| 27 | bb.nph96: ; preds = %entry |
Tim Northover | ce6538c | 2014-05-30 08:59:55 +0000 | [diff] [blame] | 28 | ret i8 3 |
Evan Cheng | f19384d | 2010-05-18 21:31:17 +0000 | [diff] [blame] | 29 | } |