mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 19:52:54 +01:00
45ead6c770
The reason why these large shift sizes happen is because OpaqueConstants currently inhibit alot of DAG combining, but that has to be addressed in another commit (like the proposal in D6946). Differential Revision: http://reviews.llvm.org/D6940 llvm-svn: 230355
22 lines
396 B
LLVM
22 lines
396 B
LLVM
; RUN: llc -march=aarch64 -o - %s
|
|
target triple = "arm64-unknown-unknown"
|
|
|
|
; Make sure we don't run into an assert in the aarch64 code selection when
|
|
; DAGCombining fails.
|
|
|
|
declare void @t()
|
|
|
|
define void @foo() {
|
|
%c = bitcast i64 270458 to i64
|
|
%t0 = lshr i64 %c, 422383
|
|
%t1 = trunc i64 %t0 to i1
|
|
br i1 %t1, label %BB1, label %BB0
|
|
|
|
BB0:
|
|
call void @t()
|
|
br label %BB1
|
|
|
|
BB1:
|
|
ret void
|
|
}
|