diff --git a/llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll b/llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll --- a/llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll +++ b/llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll @@ -1,5 +1,4 @@ ; RUN: llc -mtriple=mips64-unknown-linux < %s | FileCheck %s -; FIXME: doesn't generate any CHECK lines define i32 @main() personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*){ %1 = invoke i32 @foo() to label %good unwind label %bad diff --git a/llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll.expected b/llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll.expected --- a/llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll.expected +++ b/llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll.expected @@ -1,8 +1,26 @@ ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py ; RUN: llc -mtriple=mips64-unknown-linux < %s | FileCheck %s -; FIXME: doesn't generate any CHECK lines define i32 @main() personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*){ +; CHECK-LABEL: main: +; CHECK: # %bb.0: +; CHECK-NEXT: daddiu $sp, $sp, -16 +; CHECK-NEXT: .cfi_def_cfa_offset 16 +; CHECK-NEXT: sd $ra, 8($sp) # 8-byte Folded Spill +; CHECK-NEXT: .cfi_offset 31, -8 +; CHECK-NEXT: .Ltmp0: +; CHECK-NEXT: jal foo +; CHECK-NEXT: nop +; CHECK-NEXT: .Ltmp1: +; CHECK-NEXT: # %bb.1: # %good +; CHECK-NEXT: addiu $2, $zero, 5 +; CHECK-NEXT: ld $ra, 8($sp) # 8-byte Folded Reload +; CHECK-NEXT: jr $ra +; CHECK-NEXT: daddiu $sp, $sp, 16 +; CHECK-NEXT: .LBB0_2: # %bad +; CHECK-NEXT: .Ltmp2: +; CHECK-NEXT: jal _Unwind_Resume +; CHECK-NEXT: nop %1 = invoke i32 @foo() to label %good unwind label %bad good: ret i32 5 diff --git a/llvm/utils/UpdateTestChecks/asm.py b/llvm/utils/UpdateTestChecks/asm.py --- a/llvm/utils/UpdateTestChecks/asm.py +++ b/llvm/utils/UpdateTestChecks/asm.py @@ -59,6 +59,7 @@ ASM_FUNCTION_MIPS_RE = re.compile( r'^_?(?P[^:]+):[ \t]*#+[ \t]*@"?(?P=func)"?\n[^:]*?' # f: (name of func) + r'(?:\s*\.?Ltmp[^:\n]*:\n)?[^:]*?' # optional .Ltmp for EH r'(?:^[ \t]+\.(frame|f?mask|set).*?\n)+' # Mips+LLVM standard asm prologue r'(?P.*?)\n' # (body of the function) # Mips+LLVM standard asm epilogue