1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=i686-linux -asm-verbose | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker; Check that register copies in the landing pad come after the EH_LABEL 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdeclare i32 @f() 5*9880d681SAndroid Build Coastguard Worker 6*9880d681SAndroid Build Coastguard Workerdefine i32 @phi(i32 %x) personality i32 (...)* @__gxx_personality_v0 { 7*9880d681SAndroid Build Coastguard Workerentry: 8*9880d681SAndroid Build Coastguard Worker %a = invoke i32 @f() 9*9880d681SAndroid Build Coastguard Worker to label %cont unwind label %lpad ; <i32> [#uses=1] 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Workercont: ; preds = %entry 12*9880d681SAndroid Build Coastguard Worker %b = invoke i32 @f() 13*9880d681SAndroid Build Coastguard Worker to label %cont2 unwind label %lpad ; <i32> [#uses=1] 14*9880d681SAndroid Build Coastguard Worker 15*9880d681SAndroid Build Coastguard Workercont2: ; preds = %cont 16*9880d681SAndroid Build Coastguard Worker ret i32 %b 17*9880d681SAndroid Build Coastguard Worker 18*9880d681SAndroid Build Coastguard Workerlpad: ; preds = %cont, %entry 19*9880d681SAndroid Build Coastguard Worker %v = phi i32 [ %x, %entry ], [ %a, %cont ] ; <i32> [#uses=1] 20*9880d681SAndroid Build Coastguard Worker %exn = landingpad {i8*, i32} 21*9880d681SAndroid Build Coastguard Worker cleanup 22*9880d681SAndroid Build Coastguard Worker ret i32 %v 23*9880d681SAndroid Build Coastguard Worker} 24*9880d681SAndroid Build Coastguard Worker 25*9880d681SAndroid Build Coastguard Worker; CHECK: lpad 26*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: Ltmp 27*9880d681SAndroid Build Coastguard Worker 28*9880d681SAndroid Build Coastguard Workerdeclare i32 @__gxx_personality_v0(...) 29