You've already forked linux-packaging-mono
Imported Upstream version 5.18.0.167
Former-commit-id: 289509151e0fee68a1b591a20c9f109c3c789d3a
This commit is contained in:
parent
e19d552987
commit
b084638f15
@ -1,67 +0,0 @@
|
||||
; RUN: llc -march=hexagon < %s | FileCheck %s
|
||||
; REQUIRES: asserts
|
||||
|
||||
; When tail-duplicating a block with PHI nodes that use subregisters, the
|
||||
; subregisters were dropped by the tail duplicator, resulting in invalid
|
||||
; COPY instructions being generated.
|
||||
|
||||
; CHECK: = extractu(r{{[0-9]+}},#15,#17)
|
||||
|
||||
target triple = "hexagon"
|
||||
|
||||
%struct.0 = type { i64, i16 }
|
||||
%struct.1 = type { i64, i64 }
|
||||
|
||||
declare hidden fastcc void @foo(%struct.0* noalias nocapture, i8 signext, i8 zeroext, i32, i64, i64) unnamed_addr #0
|
||||
|
||||
define void @fred(%struct.0* noalias nocapture sret %agg.result, %struct.1* byval nocapture readonly align 8 %a) #1 {
|
||||
entry:
|
||||
%0 = load i64, i64* undef, align 8
|
||||
switch i32 undef, label %if.else [
|
||||
i32 32767, label %if.then
|
||||
i32 0, label %if.then7
|
||||
]
|
||||
|
||||
if.then: ; preds = %entry
|
||||
ret void
|
||||
|
||||
if.then7: ; preds = %entry
|
||||
br i1 undef, label %if.then.i, label %if.else16.i
|
||||
|
||||
if.then.i: ; preds = %if.then7
|
||||
br i1 undef, label %if.then5.i, label %if.else.i
|
||||
|
||||
if.then5.i: ; preds = %if.then.i
|
||||
%shl.i21 = shl i64 %0, 0
|
||||
br label %if.end.i
|
||||
|
||||
if.else.i: ; preds = %if.then.i
|
||||
%shl12.i = shl i64 %0, undef
|
||||
br label %if.end.i
|
||||
|
||||
if.end.i: ; preds = %if.else.i, %if.then5.i
|
||||
%aSig0.0 = phi i64 [ undef, %if.then5.i ], [ %shl12.i, %if.else.i ]
|
||||
%storemerge43.i = phi i64 [ %shl.i21, %if.then5.i ], [ 0, %if.else.i ]
|
||||
%sub15.i = sub nsw i32 -63, undef
|
||||
br label %if.end13
|
||||
|
||||
if.else16.i: ; preds = %if.then7
|
||||
br label %if.end13
|
||||
|
||||
if.else: ; preds = %entry
|
||||
%or12 = or i64 undef, 281474976710656
|
||||
br label %if.end13
|
||||
|
||||
if.end13: ; preds = %if.else, %if.else16.i, %if.end.i
|
||||
%aSig1.1 = phi i64 [ %0, %if.else ], [ %storemerge43.i, %if.end.i ], [ undef, %if.else16.i ]
|
||||
%aSig0.2 = phi i64 [ %or12, %if.else ], [ %aSig0.0, %if.end.i ], [ undef, %if.else16.i ]
|
||||
%aExp.0 = phi i32 [ undef, %if.else ], [ %sub15.i, %if.end.i ], [ undef, %if.else16.i ]
|
||||
%shl2.i = shl i64 %aSig0.2, 15
|
||||
%shr.i = lshr i64 %aSig1.1, 49
|
||||
%or.i = or i64 %shl2.i, %shr.i
|
||||
tail call fastcc void @foo(%struct.0* noalias %agg.result, i8 signext 80, i8 zeroext undef, i32 %aExp.0, i64 %or.i, i64 undef)
|
||||
unreachable
|
||||
}
|
||||
|
||||
attributes #0 = { norecurse nounwind }
|
||||
attributes #1 = { nounwind }
|
Reference in New Issue
Block a user