mirror of
https://github.com/RPCSX/llvm.git
synced 2025-01-22 04:05:05 +00:00
4fb2f3310a
This commit defines subtarget feature strict-align and uses it instead of cl::opt -arm-strict-align to decide whether strict alignment should be forced. Also, remove the logic that was checking the OS and architecture as clang is now responsible for setting strict-align based on the command line options specified and the target architecute and OS. rdar://problem/21529937 http://reviews.llvm.org/D11470 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@243493 91177308-0d34-0410-b5e6-96231b3b80d8
14 lines
395 B
LLVM
14 lines
395 B
LLVM
; RUN: llc -mtriple=thumbv6m-apple-unknown-macho -mattr=+strict-align < %s | FileCheck --check-prefix=V6M %s
|
|
; RUN: llc -mtriple=thumbv7m-apple-unknown-macho < %s | FileCheck --check-prefix=V7M %s
|
|
|
|
define i32 @split_load(i32* %p) nounwind {
|
|
; V6M-LABEL: split_load
|
|
; V6M: ldrh
|
|
; V6M: ldrh
|
|
; V7M-LABEL: split_load
|
|
; V7M-NOT: ldrh
|
|
; V7M: bx lr
|
|
%val = load i32, i32* %p, align 2
|
|
ret i32 %val
|
|
}
|