[mips] $s8 is an alias for $fp in all ABI's, not just N32/N64.
authorDaniel Sanders <daniel.sanders@imgtec.com>
Wed, 26 Mar 2014 11:05:24 +0000 (11:05 +0000)
committerDaniel Sanders <daniel.sanders@imgtec.com>
Wed, 26 Mar 2014 11:05:24 +0000 (11:05 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204793 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/Mips/AsmParser/MipsAsmParser.cpp
test/MC/Mips/mips-register-names.s
test/MC/Mips/mips64-register-names.s

index 078b554e2e07cc6ff2e0fb0123738a5d39fd5399..ca11e35a44030288e9de705e1d01420b0d702107 100644 (file)
@@ -1018,9 +1018,10 @@ int MipsAsmParser::matchCPURegisterName(StringRef Name) {
            .Case("s7", 23)
            .Case("k0", 26)
            .Case("k1", 27)
+           .Case("gp", 28)
            .Case("sp", 29)
            .Case("fp", 30)
-           .Case("gp", 28)
+           .Case("s8", 30)
            .Case("ra", 31)
            .Case("t0", 8)
            .Case("t1", 9)
@@ -1048,7 +1049,6 @@ int MipsAsmParser::matchCPURegisterName(StringRef Name) {
              .Case("a7", 11)
              .Case("kt0", 26)
              .Case("kt1", 27)
-             .Case("s8", 30)
              .Default(-1);
 
   warnIfAssemblerTemporary(CC);
index 3e1731cac9f159ac66c571f7442e79c71759de17..f737faa2e6ab5d705a4bb5c298ec1ccb3feb9b31 100644 (file)
@@ -35,5 +35,5 @@ addiu $k1, $zero, 0   # CHECK: encoding: [0x24,0x1b,0x00,0x00]
 addiu  $gp, $zero, 0   # CHECK: encoding: [0x24,0x1c,0x00,0x00]
 addiu  $sp, $zero, 0   # CHECK: encoding: [0x24,0x1d,0x00,0x00]
 addiu  $fp, $zero, 0   # CHECK: encoding: [0x24,0x1e,0x00,0x00]
-addiu  $sp, $zero, 0
+addiu  $s8, $zero, 0   # CHECK: encoding: [0x24,0x1e,0x00,0x00]
 addiu  $ra, $zero, 0   # CHECK: encoding: [0x24,0x1f,0x00,0x00]
index 3d82a8466808db1f5142b670949a19aebcda539d..3d47b6b71efcda6c184731e651bc7fe71fd7d813 100644 (file)
@@ -35,4 +35,5 @@ daddiu        $kt1, $zero, 0  # CHECK: encoding: [0x64,0x1b,0x00,0x00]
 daddiu $gp, $zero, 0   # CHECK: encoding: [0x64,0x1c,0x00,0x00]
 daddiu $sp, $zero, 0   # CHECK: encoding: [0x64,0x1d,0x00,0x00]
 daddiu $s8, $zero, 0   # CHECK: encoding: [0x64,0x1e,0x00,0x00]
+daddiu $fp, $zero, 0   # CHECK: encoding: [0x64,0x1e,0x00,0x00]
 daddiu $ra, $zero, 0   # CHECK: encoding: [0x64,0x1f,0x00,0x00]