Daniel Sanders | 0d97270 | 2016-06-24 12:23:17 +0000 | [diff] [blame] | 1 | ; RUN: llc -march=mips -mattr=+o32 < %s | FileCheck %s --check-prefixes=CHECK,CHECK-EB |
| 2 | ; RUN: llc -march=mipsel -mattr=+o32 < %s | FileCheck %s --check-prefixes=CHECK,CHECK-EL |
| 3 | ; RUN: llc -march=mips -mattr=+o32,+fpxx < %s | FileCheck %s --check-prefixes=CHECK,CHECK-EB |
| 4 | ; RUN: llc -march=mipsel -mattr=+o32,+fpxx < %s | FileCheck %s --check-prefixes=CHECK,CHECK-EL |
| 5 | ; RUN: llc -march=mips -mattr=+o32,+fp64 < %s | FileCheck %s --check-prefixes=CHECK,CHECK-EB |
| 6 | ; RUN: llc -march=mipsel -mattr=+o32,+fp64 < %s | FileCheck %s --check-prefixes=CHECK,CHECK-EL |
Zoran Jovanovic | f34b454 | 2014-07-10 22:23:30 +0000 | [diff] [blame] | 7 | |
| 8 | @var = global double 0.0 |
| 9 | |
| 10 | declare void @foo(...) |
| 11 | |
| 12 | define void @bar() { |
| 13 | |
| 14 | ; CHECK-LABEL: bar: |
| 15 | |
| 16 | ; CHECK: .cfi_def_cfa_offset 40 |
| 17 | ; CHECK: sdc1 $f22, 32($sp) |
| 18 | ; CHECK: sdc1 $f20, 24($sp) |
| 19 | ; CHECK: sw $ra, 20($sp) |
| 20 | ; CHECK: sw $16, 16($sp) |
| 21 | |
| 22 | ; CHECK-EB: .cfi_offset 55, -8 |
| 23 | ; CHECK-EB: .cfi_offset 54, -4 |
| 24 | ; CHECK-EB: .cfi_offset 53, -16 |
| 25 | ; CHECK-EB: .cfi_offset 52, -12 |
| 26 | |
| 27 | ; CHECK-EL: .cfi_offset 54, -8 |
| 28 | ; CHECK-EL: .cfi_offset 55, -4 |
| 29 | ; CHECK-EL: .cfi_offset 52, -16 |
| 30 | ; CHECK-EL: .cfi_offset 53, -12 |
| 31 | |
| 32 | ; CHECK: .cfi_offset 31, -20 |
| 33 | ; CHECK: .cfi_offset 16, -24 |
| 34 | |
David Blaikie | a79ac14 | 2015-02-27 21:17:42 +0000 | [diff] [blame] | 35 | %val1 = load volatile double, double* @var |
| 36 | %val2 = load volatile double, double* @var |
David Blaikie | 23af648 | 2015-04-16 23:24:18 +0000 | [diff] [blame] | 37 | call void (...) @foo() nounwind |
Zoran Jovanovic | f34b454 | 2014-07-10 22:23:30 +0000 | [diff] [blame] | 38 | store volatile double %val1, double* @var |
| 39 | store volatile double %val2, double* @var |
| 40 | ret void |
| 41 | } |