diff options
-rw-r--r-- | src/vm_mips.dasc | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/vm_mips.dasc b/src/vm_mips.dasc index 03b3084e..8b083ff1 100644 --- a/src/vm_mips.dasc +++ b/src/vm_mips.dasc | |||
@@ -1875,7 +1875,8 @@ static void build_subroutines(BuildCtx *ctx) | |||
1875 | | | 1875 | | |
1876 | |.ffunc string_char // Only handle the 1-arg case here. | 1876 | |.ffunc string_char // Only handle the 1-arg case here. |
1877 | | ffgccheck | 1877 | | ffgccheck |
1878 | |. lw CARG3, HI(BASE) | 1878 | |. nop |
1879 | | lw CARG3, HI(BASE) | ||
1879 | | lw CARG1, LO(BASE) | 1880 | | lw CARG1, LO(BASE) |
1880 | | li TMP1, 255 | 1881 | | li TMP1, 255 |
1881 | | xori AT, NARGS8:RC, 8 // Exactly 1 argument. | 1882 | | xori AT, NARGS8:RC, 8 // Exactly 1 argument. |
@@ -1902,7 +1903,8 @@ static void build_subroutines(BuildCtx *ctx) | |||
1902 | | | 1903 | | |
1903 | |.ffunc string_sub | 1904 | |.ffunc string_sub |
1904 | | ffgccheck | 1905 | | ffgccheck |
1905 | |. addiu AT, NARGS8:RC, -16 | 1906 | |. nop |
1907 | | addiu AT, NARGS8:RC, -16 | ||
1906 | | lw CARG3, 16+HI(BASE) | 1908 | | lw CARG3, 16+HI(BASE) |
1907 | | lw TMP0, HI(BASE) | 1909 | | lw TMP0, HI(BASE) |
1908 | | lw STR:CARG1, LO(BASE) | 1910 | | lw STR:CARG1, LO(BASE) |
@@ -1946,7 +1948,8 @@ static void build_subroutines(BuildCtx *ctx) | |||
1946 | |.macro ffstring_op, name | 1948 | |.macro ffstring_op, name |
1947 | | .ffunc string_ .. name | 1949 | | .ffunc string_ .. name |
1948 | | ffgccheck | 1950 | | ffgccheck |
1949 | |. lw CARG3, HI(BASE) | 1951 | |. nop |
1952 | | lw CARG3, HI(BASE) | ||
1950 | | lw STR:CARG2, LO(BASE) | 1953 | | lw STR:CARG2, LO(BASE) |
1951 | | beqz NARGS8:RC, ->fff_fallback | 1954 | | beqz NARGS8:RC, ->fff_fallback |
1952 | |. li AT, LJ_TSTR | 1955 | |. li AT, LJ_TSTR |