From 8e17bea7d58c6492edfbba2309daaf54f363c7c7 Mon Sep 17 00:00:00 2001 From: Daniel Sanders Date: Thu, 23 Jun 2016 10:54:09 +0000 Subject: [mips][ias] Integers are not registers. Summary: When parseAnyRegister() encounters a symbol alias, it parses integers and adds a corresponding expression to the operand list. This is clearly wrong since the only operands that parseAnyRegister() should be accepting are registers. It's not clear why this code was added and there are no test cases that cover it. I think it might be leftover from when searchSymbolAlias() was more widely used. Reviewers: sdardis Subscribers: dsanders, sdardis, llvm-commits Differential Revision: http://reviews.llvm.org/D21377 llvm-svn: 273555 --- llvm/test/MC/Mips/cpsetup.s | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'llvm/test') diff --git a/llvm/test/MC/Mips/cpsetup.s b/llvm/test/MC/Mips/cpsetup.s index f858b21ee87..155ed6beeb4 100644 --- a/llvm/test/MC/Mips/cpsetup.s +++ b/llvm/test/MC/Mips/cpsetup.s @@ -160,3 +160,33 @@ t5: # ALL-NEXT: nop +t1b: +IMM_8 = 8 + .cpsetup $25, IMM_8, __cerror + nop + .cpreturn + nop + +# ALL-LABEL: t1b: +# ASM-NEXT: IMM_8 = 8 + +# O32-NOT: __cerror + +# NXX-NEXT: sd $gp, 8($sp) +# NXX-NEXT: lui $gp, 0 +# N32-NEXT: R_MIPS_HI16/R_MIPS_NONE/R_MIPS_NONE __gnu_local_gp +# N64-NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 __cerror +# NXX-NEXT: addiu $gp, $gp, 0 +# N32-NEXT: R_MIPS_LO16/R_MIPS_NONE/R_MIPS_NONE __gnu_local_gp +# N64-NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_LO16 __cerror +# N64-NEXT: daddu $gp, $gp, $25 + +# ASM-NEXT: .cpsetup $25, 8, __cerror + +# ALL-NEXT: nop + +# ASM-NEXT: .cpreturn +# NXX-NEXT: ld $gp, 8($sp) + +# ALL-NEXT: nop + -- cgit v1.2.3