mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-27 03:51:15 +08:00
* config/tc-mips.c (mips_set_options): Add sym32 field.
(mips_opts): Initialize it. (HAVE_32BIT_ADDRESSES): Set to true if pointers are 32 bits wide. (HAVE_64BIT_ADDRESSES): Redefine as !HAVE_32BIT_ADDRESSES. (HAVE_32BIT_SYMBOLS, HAVE_64BIT_SYMBOLS): New macros. (load_address): Use HAVE_64BIT_SYMBOLS instead of HAVE_64BIT_ADDRESSES when deciding whether to use a symbolic %highest/%higher expansion. (macro): Likewise. Remove o64/n32 linux hack. Always use ADDRESS_ADD*_INSN for address addition in the expansion of "dla" and "la". Handle constants separately from symbolic expressions in the "ld_st:" case, using 64-bit arithmetic if HAVE_64BIT_ADDRESSES and using load_register to load the high part of the address. (OPTION_MSYM32, OPTION_NO_MSYM32): New macros. (OPTION_ELF_BASE): Bump by 2. (md_longopts): Add entries for -msym32 and -mno-sym32. (md_parse_option): Handle them. (usage): Document them. (s_mipsset): Handle ".set sym32" and ".set nosym32". (s_cpload, s_cpsetup): Use HAVE_64BIT_SYMBOLS instead of HAVE_64BIT_ADDRESSES to detect 64-bit values of "_gp". * doc/c-mips.texi: Document ".set sym32", ".set nosym32", -msym32 and -mno-sym32.
This commit is contained in:
parent
b91e7df1e4
commit
aed1a26192
@ -1,3 +1,28 @@
|
||||
2005-03-04 Richard Sandiford <rsandifo@redhat.com>
|
||||
|
||||
* config/tc-mips.c (mips_set_options): Add sym32 field.
|
||||
(mips_opts): Initialize it.
|
||||
(HAVE_32BIT_ADDRESSES): Set to true if pointers are 32 bits wide.
|
||||
(HAVE_64BIT_ADDRESSES): Redefine as !HAVE_32BIT_ADDRESSES.
|
||||
(HAVE_32BIT_SYMBOLS, HAVE_64BIT_SYMBOLS): New macros.
|
||||
(load_address): Use HAVE_64BIT_SYMBOLS instead of HAVE_64BIT_ADDRESSES
|
||||
when deciding whether to use a symbolic %highest/%higher expansion.
|
||||
(macro): Likewise. Remove o64/n32 linux hack. Always use
|
||||
ADDRESS_ADD*_INSN for address addition in the expansion of "dla"
|
||||
and "la". Handle constants separately from symbolic expressions in
|
||||
the "ld_st:" case, using 64-bit arithmetic if HAVE_64BIT_ADDRESSES
|
||||
and using load_register to load the high part of the address.
|
||||
(OPTION_MSYM32, OPTION_NO_MSYM32): New macros.
|
||||
(OPTION_ELF_BASE): Bump by 2.
|
||||
(md_longopts): Add entries for -msym32 and -mno-sym32.
|
||||
(md_parse_option): Handle them.
|
||||
(usage): Document them.
|
||||
(s_mipsset): Handle ".set sym32" and ".set nosym32".
|
||||
(s_cpload, s_cpsetup): Use HAVE_64BIT_SYMBOLS instead of
|
||||
HAVE_64BIT_ADDRESSES to detect 64-bit values of "_gp".
|
||||
* doc/c-mips.texi: Document ".set sym32", ".set nosym32",
|
||||
-msym32 and -mno-sym32.
|
||||
|
||||
2005-03-03 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
|
||||
|
||||
* config/tc-mips.c (load_address): Implement GP optimization
|
||||
|
@ -189,6 +189,8 @@ struct mips_set_options
|
||||
/* MIPS architecture (CPU) type. Changed by .set arch=FOO, the -march
|
||||
command line option, and the default CPU. */
|
||||
int arch;
|
||||
/* True if ".set sym32" is in effect. */
|
||||
bfd_boolean sym32;
|
||||
};
|
||||
|
||||
/* True if -mgp32 was passed. */
|
||||
@ -203,7 +205,7 @@ static int file_mips_fp32 = -1;
|
||||
|
||||
static struct mips_set_options mips_opts =
|
||||
{
|
||||
ISA_UNKNOWN, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, CPU_UNKNOWN
|
||||
ISA_UNKNOWN, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, CPU_UNKNOWN, FALSE
|
||||
};
|
||||
|
||||
/* These variables are filled in with the masks of registers used.
|
||||
@ -286,13 +288,16 @@ static int mips_32bitmode = 0;
|
||||
/* True if relocations are stored in-place. */
|
||||
#define HAVE_IN_PLACE_ADDENDS (!HAVE_NEWABI)
|
||||
|
||||
/* We can only have 64bit addresses if the object file format supports it. */
|
||||
#define HAVE_32BIT_ADDRESSES \
|
||||
(HAVE_32BIT_GPRS \
|
||||
|| (bfd_arch_bits_per_address (stdoutput) == 32 \
|
||||
|| ! HAVE_64BIT_OBJECTS)) \
|
||||
/* The ABI-derived address size. */
|
||||
#define HAVE_64BIT_ADDRESSES \
|
||||
(HAVE_64BIT_GPRS && (mips_abi == EABI_ABI || mips_abi == N64_ABI))
|
||||
#define HAVE_32BIT_ADDRESSES (!HAVE_64BIT_ADDRESSES)
|
||||
|
||||
#define HAVE_64BIT_ADDRESSES (! HAVE_32BIT_ADDRESSES)
|
||||
/* The size of symbolic constants (i.e., expressions of the form
|
||||
"SYMBOL" or "SYMBOL + OFFSET"). */
|
||||
#define HAVE_32BIT_SYMBOLS \
|
||||
(HAVE_32BIT_ADDRESSES || !HAVE_64BIT_OBJECTS || mips_opts.sym32)
|
||||
#define HAVE_64BIT_SYMBOLS (!HAVE_32BIT_SYMBOLS)
|
||||
|
||||
/* Addresses are loaded in different ways, depending on the address size
|
||||
in use. The n32 ABI Documentation also mandates the use of additions
|
||||
@ -3864,7 +3869,7 @@ load_address (int reg, expressionS *ep, int *used_at)
|
||||
|
||||
For GP relative symbols in 64bit address space we can use
|
||||
the same sequence as in 32bit address space. */
|
||||
if (HAVE_64BIT_ADDRESSES)
|
||||
if (HAVE_64BIT_SYMBOLS)
|
||||
{
|
||||
if ((valueT) ep->X_add_number <= MAX_GPREL_OFFSET
|
||||
&& !nopic_need_relax (ep->X_add_symbol, 1))
|
||||
@ -4922,8 +4927,7 @@ macro (struct mips_cl_insn *ip)
|
||||
&& offset_expr.X_add_number >= -0x8000
|
||||
&& offset_expr.X_add_number < 0x8000)
|
||||
{
|
||||
macro_build (&offset_expr,
|
||||
(dbl || HAVE_64BIT_ADDRESSES) ? "daddiu" : "addiu",
|
||||
macro_build (&offset_expr, ADDRESS_ADDI_INSN,
|
||||
"t,r,j", treg, sreg, BFD_RELOC_LO16);
|
||||
break;
|
||||
}
|
||||
@ -4946,10 +4950,7 @@ macro (struct mips_cl_insn *ip)
|
||||
}
|
||||
|
||||
if (offset_expr.X_op == O_constant)
|
||||
load_register (tempreg, &offset_expr,
|
||||
(mips_pic == NO_PIC
|
||||
? (dbl || HAVE_64BIT_ADDRESSES)
|
||||
: HAVE_64BIT_ADDRESSES));
|
||||
load_register (tempreg, &offset_expr, HAVE_64BIT_ADDRESSES);
|
||||
else if (mips_pic == NO_PIC)
|
||||
{
|
||||
/* If this is a reference to a GP relative symbol, we want
|
||||
@ -4979,7 +4980,7 @@ macro (struct mips_cl_insn *ip)
|
||||
|
||||
For GP relative symbols in 64bit address space we can use
|
||||
the same sequence as in 32bit address space. */
|
||||
if (HAVE_64BIT_ADDRESSES)
|
||||
if (HAVE_64BIT_SYMBOLS)
|
||||
{
|
||||
if ((valueT) offset_expr.X_add_number <= MAX_GPREL_OFFSET
|
||||
&& !nopic_need_relax (offset_expr.X_add_symbol, 1))
|
||||
@ -5504,16 +5505,7 @@ macro (struct mips_cl_insn *ip)
|
||||
abort ();
|
||||
|
||||
if (breg != 0)
|
||||
{
|
||||
char *s;
|
||||
|
||||
if (mips_pic == NO_PIC)
|
||||
s = (dbl || HAVE_64BIT_ADDRESSES) ? "daddu" : "addu";
|
||||
else
|
||||
s = ADDRESS_ADD_INSN;
|
||||
|
||||
macro_build (NULL, s, "d,v,t", treg, tempreg, breg);
|
||||
}
|
||||
macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", treg, tempreg, breg);
|
||||
break;
|
||||
|
||||
case M_J_A:
|
||||
@ -5882,22 +5874,6 @@ macro (struct mips_cl_insn *ip)
|
||||
else
|
||||
fmt = "t,o(b)";
|
||||
|
||||
/* Sign-extending 32-bit constants makes their handling easier.
|
||||
The HAVE_64BIT_GPRS... part is due to the linux kernel hack
|
||||
described below. */
|
||||
if ((! HAVE_64BIT_ADDRESSES
|
||||
&& (! HAVE_64BIT_GPRS && offset_expr.X_op == O_constant))
|
||||
&& (offset_expr.X_op == O_constant)
|
||||
&& ! ((offset_expr.X_add_number & ~((bfd_vma) 0x7fffffff))
|
||||
== ~((bfd_vma) 0x7fffffff)))
|
||||
{
|
||||
if (offset_expr.X_add_number & ~((bfd_vma) 0xffffffff))
|
||||
as_bad (_("constant too large"));
|
||||
|
||||
offset_expr.X_add_number = (((offset_expr.X_add_number & 0xffffffff)
|
||||
^ 0x80000000) - 0x80000000);
|
||||
}
|
||||
|
||||
if (offset_expr.X_op != O_constant
|
||||
&& offset_expr.X_op != O_symbol)
|
||||
{
|
||||
@ -5907,8 +5883,21 @@ macro (struct mips_cl_insn *ip)
|
||||
|
||||
/* A constant expression in PIC code can be handled just as it
|
||||
is in non PIC code. */
|
||||
if (mips_pic == NO_PIC
|
||||
|| offset_expr.X_op == O_constant)
|
||||
if (offset_expr.X_op == O_constant)
|
||||
{
|
||||
if (HAVE_32BIT_ADDRESSES
|
||||
&& !IS_SEXT_32BIT_NUM (offset_expr.X_add_number))
|
||||
as_bad (_("constant too large"));
|
||||
|
||||
expr1.X_add_number = ((offset_expr.X_add_number + 0x8000)
|
||||
& ~(bfd_vma) 0xffff);
|
||||
load_register (tempreg, &expr1, HAVE_64BIT_ADDRESSES);
|
||||
if (breg != 0)
|
||||
macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t",
|
||||
tempreg, tempreg, breg);
|
||||
macro_build (&offset_expr, s, fmt, treg, BFD_RELOC_LO16, tempreg);
|
||||
}
|
||||
else if (mips_pic == NO_PIC)
|
||||
{
|
||||
/* If this is a reference to a GP relative symbol, and there
|
||||
is no base register, we want
|
||||
@ -5964,42 +5953,10 @@ macro (struct mips_cl_insn *ip)
|
||||
<op> $treg,<sym>($tempreg) (BFD_RELOC_LO16)
|
||||
|
||||
For GP relative symbols in 64bit address space we can use
|
||||
the same sequence as in 32bit address space.
|
||||
|
||||
If we have 64-bit addresses, as an optimization, for
|
||||
addresses which are 32-bit constants (e.g. kseg0/kseg1
|
||||
addresses) we fall back to the 32-bit address generation
|
||||
mechanism since it is more efficient. Note that due to
|
||||
the signed offset used by memory operations, the 32-bit
|
||||
range is shifted down by 32768 here. This code should
|
||||
probably attempt to generate 64-bit constants more
|
||||
efficiently in general.
|
||||
|
||||
As an extension for architectures with 64-bit registers,
|
||||
we don't truncate 64-bit addresses given as literal
|
||||
constants down to 32 bits, to support existing practice
|
||||
in the mips64 Linux (the kernel), that compiles source
|
||||
files with -mabi=64, assembling them as o32 or n32 (with
|
||||
-Wa,-32 or -Wa,-n32). This is not beautiful, but since
|
||||
the whole kernel is loaded into a memory region that is
|
||||
addressable with sign-extended 32-bit addresses, it is
|
||||
wasteful to compute the upper 32 bits of every
|
||||
non-literal address, that takes more space and time.
|
||||
Some day this should probably be implemented as an
|
||||
assembler option, such that the kernel doesn't have to
|
||||
use such ugly hacks, even though it will still have to
|
||||
end up converting the binary to ELF32 for a number of
|
||||
platforms whose boot loaders don't support ELF64
|
||||
binaries. */
|
||||
if ((HAVE_64BIT_ADDRESSES
|
||||
&& ! (offset_expr.X_op == O_constant
|
||||
&& IS_SEXT_32BIT_NUM (offset_expr.X_add_number + 0x8000)))
|
||||
|| (HAVE_64BIT_GPRS
|
||||
&& offset_expr.X_op == O_constant
|
||||
&& ! IS_SEXT_32BIT_NUM (offset_expr.X_add_number + 0x8000)))
|
||||
the same sequence as in 32bit address space. */
|
||||
if (HAVE_64BIT_SYMBOLS)
|
||||
{
|
||||
if (offset_expr.X_op == O_symbol
|
||||
&& (valueT) offset_expr.X_add_number <= MAX_GPREL_OFFSET
|
||||
if ((valueT) offset_expr.X_add_number <= MAX_GPREL_OFFSET
|
||||
&& !nopic_need_relax (offset_expr.X_add_symbol, 1))
|
||||
{
|
||||
relax_start (offset_expr.X_add_symbol);
|
||||
@ -6056,10 +6013,6 @@ macro (struct mips_cl_insn *ip)
|
||||
break;
|
||||
}
|
||||
|
||||
if (offset_expr.X_op == O_constant
|
||||
&& ! IS_SEXT_32BIT_NUM (offset_expr.X_add_number + 0x8000))
|
||||
as_bad (_("load/store address overflow (max 32 bits)"));
|
||||
|
||||
if (breg == 0)
|
||||
{
|
||||
if ((valueT) offset_expr.X_add_number <= MAX_GPREL_OFFSET
|
||||
@ -10241,10 +10194,14 @@ struct option md_longopts[] =
|
||||
#define OPTION_MNO_SHARED (OPTION_MISC_BASE + 13)
|
||||
{"mshared", no_argument, NULL, OPTION_MSHARED},
|
||||
{"mno-shared", no_argument, NULL, OPTION_MNO_SHARED},
|
||||
#define OPTION_MSYM32 (OPTION_MISC_BASE + 14)
|
||||
#define OPTION_MNO_SYM32 (OPTION_MISC_BASE + 15)
|
||||
{"msym32", no_argument, NULL, OPTION_MSYM32},
|
||||
{"mno-sym32", no_argument, NULL, OPTION_MNO_SYM32},
|
||||
|
||||
/* ELF-specific options. */
|
||||
#ifdef OBJ_ELF
|
||||
#define OPTION_ELF_BASE (OPTION_MISC_BASE + 14)
|
||||
#define OPTION_ELF_BASE (OPTION_MISC_BASE + 16)
|
||||
#define OPTION_CALL_SHARED (OPTION_ELF_BASE + 0)
|
||||
{"KPIC", no_argument, NULL, OPTION_CALL_SHARED},
|
||||
{"call_shared", no_argument, NULL, OPTION_CALL_SHARED},
|
||||
@ -10465,6 +10422,14 @@ md_parse_option (int c, char *arg)
|
||||
mips_in_shared = FALSE;
|
||||
break;
|
||||
|
||||
case OPTION_MSYM32:
|
||||
mips_opts.sym32 = TRUE;
|
||||
break;
|
||||
|
||||
case OPTION_MNO_SYM32:
|
||||
mips_opts.sym32 = FALSE;
|
||||
break;
|
||||
|
||||
#ifdef OBJ_ELF
|
||||
/* When generating ELF code, we permit -KPIC and -call_shared to
|
||||
select SVR4_PIC, and -non_shared to select no PIC. This is
|
||||
@ -11814,6 +11779,10 @@ s_mipsset (int x ATTRIBUTE_UNUSED)
|
||||
free (s);
|
||||
}
|
||||
}
|
||||
else if (strcmp (name, "sym32") == 0)
|
||||
mips_opts.sym32 = TRUE;
|
||||
else if (strcmp (name, "nosym32") == 0)
|
||||
mips_opts.sym32 = FALSE;
|
||||
else
|
||||
{
|
||||
as_warn (_("Tried to set unrecognized symbol: %s\n"), name);
|
||||
@ -11880,7 +11849,7 @@ s_cpload (int ignore ATTRIBUTE_UNUSED)
|
||||
|
||||
/* If we need to produce a 64-bit address, we are better off using
|
||||
the default instruction sequence. */
|
||||
in_shared = mips_in_shared || HAVE_64BIT_ADDRESSES;
|
||||
in_shared = mips_in_shared || HAVE_64BIT_SYMBOLS;
|
||||
|
||||
ex.X_op = O_symbol;
|
||||
ex.X_add_symbol = symbol_find_or_make (in_shared ? "_gp_disp" : "_gp");
|
||||
@ -11984,7 +11953,7 @@ s_cpsetup (int ignore ATTRIBUTE_UNUSED)
|
||||
macro_build (NULL, "daddu", "d,v,t", mips_cpreturn_register,
|
||||
mips_gp_register, 0);
|
||||
|
||||
if (mips_in_shared || HAVE_64BIT_ADDRESSES)
|
||||
if (mips_in_shared || HAVE_64BIT_SYMBOLS)
|
||||
{
|
||||
macro_build (&ex_sym, "lui", "t,u", mips_gp_register,
|
||||
-1, BFD_RELOC_GPREL16, BFD_RELOC_MIPS_SUB,
|
||||
@ -14136,6 +14105,8 @@ MIPS options:\n\
|
||||
-mfix-vr4120 work around certain VR4120 errata\n\
|
||||
-mgp32 use 32-bit GPRs, regardless of the chosen ISA\n\
|
||||
-mfp32 use 32-bit FPRs, regardless of the chosen ISA\n\
|
||||
-mno-shared optimize output for executables\n\
|
||||
-msym32 assume all symbols have 32-bit values\n\
|
||||
-O0 remove unneeded NOPs, do not swap branches\n\
|
||||
-O remove unneeded NOPs and swap branches\n\
|
||||
--[no-]construct-floats [dis]allow floating point values to be constructed\n\
|
||||
|
@ -26,6 +26,7 @@ Assembly Language Programming'' in the same work.
|
||||
* MIPS Object:: ECOFF object code
|
||||
* MIPS Stabs:: Directives for debugging information
|
||||
* MIPS ISA:: Directives to override the ISA level
|
||||
* MIPS symbol sizes:: Directives to override the size of symbols
|
||||
* MIPS autoextend:: Directives for extending MIPS 16 bit instructions
|
||||
* MIPS insn:: Directive to mark data as an instruction
|
||||
* MIPS option stack:: Directives to save and restore options
|
||||
@ -197,6 +198,13 @@ identical to @samp{-march=@var{cpu}}.
|
||||
Record which ABI the source code uses. The recognized arguments
|
||||
are: @samp{32}, @samp{n32}, @samp{o64}, @samp{64} and @samp{eabi}.
|
||||
|
||||
@item -msym32
|
||||
@itemx -mno-sym32
|
||||
@cindex -msym32
|
||||
@cindex -mno-sym32
|
||||
Equivalent to adding @code{.set sym32} or @code{.set nosym32} to
|
||||
the beginning of the assembler input. @xref{MIPS symbol sizes}.
|
||||
|
||||
@cindex @code{-nocpp} ignored (MIPS)
|
||||
@item -nocpp
|
||||
This option is ignored. It is accepted for command-line compatibility with
|
||||
@ -297,6 +305,61 @@ not by traditional @sc{mips} debuggers (this enhancement is required to fully
|
||||
support C++ debugging). These directives are primarily used by compilers, not
|
||||
assembly language programmers!
|
||||
|
||||
@node MIPS symbol sizes
|
||||
@section Directives to override the size of symbols
|
||||
|
||||
@cindex @code{.set sym32}
|
||||
@cindex @code{.set nosym32}
|
||||
The n64 ABI allows symbols to have any 64-bit value. Although this
|
||||
provides a great deal of flexibility, it means that some macros have
|
||||
much longer expansions than their 32-bit counterparts. For example,
|
||||
the non-PIC expansion of @samp{dla $4,sym} is usually:
|
||||
|
||||
@smallexample
|
||||
lui $4,%highest(sym)
|
||||
lui $1,%hi(sym)
|
||||
daddiu $4,$4,%higher(sym)
|
||||
daddiu $1,$1,%lo(sym)
|
||||
dsll32 $4,$4,0
|
||||
daddu $4,$4,$1
|
||||
@end smallexample
|
||||
|
||||
whereas the 32-bit expansion is simply:
|
||||
|
||||
@smallexample
|
||||
lui $4,%hi(sym)
|
||||
daddiu $4,$4,%lo(sym)
|
||||
@end smallexample
|
||||
|
||||
n64 code is sometimes constructed in such a way that all symbolic
|
||||
constants are known to have 32-bit values, and in such cases, it's
|
||||
preferable to use the 32-bit expansion instead of the 64-bit
|
||||
expansion.
|
||||
|
||||
You can use the @code{.set sym32} directive to tell the assembler
|
||||
that, from this point on, all expressions of the form
|
||||
@samp{@var{symbol}} or @samp{@var{symbol} + @var{offset}}
|
||||
have 32-bit values. For example:
|
||||
|
||||
@smallexample
|
||||
.set sym32
|
||||
dla $4,sym
|
||||
lw $4,sym+16
|
||||
sw $4,sym+0x8000($4)
|
||||
@end smallexample
|
||||
|
||||
will cause the assembler to treat @samp{sym}, @code{sym+16} and
|
||||
@code{sym+0x8000} as 32-bit values. The handling of non-symbolic
|
||||
addresses is not affected.
|
||||
|
||||
The directive @code{.set nosym32} ends a @code{.set sym32} block and
|
||||
reverts to the normal behavior. It is also possible to change the
|
||||
symbol size using the command-line options @option{-msym32} and
|
||||
@option{-mno-sym32}.
|
||||
|
||||
These options and directives are always accepted, but at present,
|
||||
they have no effect for anything other than n64.
|
||||
|
||||
@node MIPS ISA
|
||||
@section Directives to override the ISA level
|
||||
|
||||
|
@ -1,3 +1,11 @@
|
||||
2005-03-04 Richard Sandiford <rsandifo@redhat.com>
|
||||
|
||||
* gas/mips/ldstla-{n32.s, n32.d, n32-shared.d}: Delete.
|
||||
* gas/mips/ldstla-{n64.d, n64-shared.d}: Adjust expected output
|
||||
for loads and stores from constant addresses.
|
||||
* gas/mips/ldstla-{sym32.s, eabi64.d, n64-sym32.d}: New tests.
|
||||
* gas/mips/mips.exp: Run them.
|
||||
|
||||
2005-03-03 Richard Sandiford <rsandifo@redhat.com>
|
||||
|
||||
* gas/mips/mips.exp: Move tls tests to main $elf block.
|
||||
|
657
gas/testsuite/gas/mips/ldstla-eabi64.d
Normal file
657
gas/testsuite/gas/mips/ldstla-eabi64.d
Normal file
@ -0,0 +1,657 @@
|
||||
#objdump: -dr
|
||||
#as: -mabi=eabi -mips3 -G8 -EB
|
||||
#name: MIPS ld-st-la (EABI64)
|
||||
#source: ldstla-sym32.s
|
||||
|
||||
.*file format .*
|
||||
|
||||
Disassembly .*:
|
||||
|
||||
0+00 <.*>:
|
||||
#
|
||||
# dla constants
|
||||
#
|
||||
.* li a0,0xa800
|
||||
.* dsll32 a0,a0,0x10
|
||||
.* li a0,0xa800
|
||||
.* dsll32 a0,a0,0x10
|
||||
.* daddu a0,a0,v1
|
||||
.* lui a0,0x8000
|
||||
.* lui a0,0x8000
|
||||
.* daddu a0,a0,v1
|
||||
.* lui a0,0x7fff
|
||||
.* ori a0,a0,0x7ff8
|
||||
.* lui a0,0x7fff
|
||||
.* ori a0,a0,0x7ff8
|
||||
.* daddu a0,a0,v1
|
||||
.* lui a0,0x7fff
|
||||
.* ori a0,a0,0xfff8
|
||||
.* lui a0,0x7fff
|
||||
.* ori a0,a0,0xfff8
|
||||
.* daddu a0,a0,v1
|
||||
.* lui a0,0x1234
|
||||
.* ori a0,a0,0x5678
|
||||
.* dsll a0,a0,0x10
|
||||
.* ori a0,a0,0x9abc
|
||||
.* dsll a0,a0,0x10
|
||||
.* ori a0,a0,0xdef0
|
||||
.* lui a0,0x1234
|
||||
.* ori a0,a0,0x5678
|
||||
.* dsll a0,a0,0x10
|
||||
.* ori a0,a0,0x9abc
|
||||
.* dsll a0,a0,0x10
|
||||
.* ori a0,a0,0xdef0
|
||||
.* daddu a0,a0,v1
|
||||
#
|
||||
# dla small_comm
|
||||
#
|
||||
.* daddiu a0,gp,0
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* daddiu a0,gp,0
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* daddu a0,a0,v1
|
||||
.* daddiu a0,gp,3
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* daddiu a0,gp,3
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* daddu a0,a0,v1
|
||||
#
|
||||
# dla big_comm
|
||||
#
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* d?addiu a0,a0,0
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* d?addiu a0,a0,0
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* daddu a0,a0,v1
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* d?addiu a0,a0,3
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* d?addiu a0,a0,3
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* daddu a0,a0,v1
|
||||
#
|
||||
# dla small_data
|
||||
#
|
||||
.* daddiu a0,gp,0
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* daddiu a0,gp,0
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* daddu a0,a0,v1
|
||||
.* daddiu a0,gp,3
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* daddiu a0,gp,3
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* daddu a0,a0,v1
|
||||
#
|
||||
# dla big_data
|
||||
#
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* d?addiu a0,a0,0
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* d?addiu a0,a0,0
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* daddu a0,a0,v1
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* d?addiu a0,a0,3
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* d?addiu a0,a0,3
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* daddu a0,a0,v1
|
||||
#
|
||||
# dla extern
|
||||
#
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu a0,a0,0
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu a0,a0,0
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* daddu a0,a0,v1
|
||||
.* lui a0,0x3
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu a0,a0,16384
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui a0,0x3
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu a0,a0,16384
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* daddu a0,a0,v1
|
||||
.* lui a0,0xfffd
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu a0,a0,-16384
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui a0,0xfffd
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu a0,a0,-16384
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* daddu a0,a0,v1
|
||||
#
|
||||
# lw constants
|
||||
#
|
||||
.* li a0,0xa800
|
||||
.* dsll32 a0,a0,0x10
|
||||
.* lw a0,0\(a0\)
|
||||
.* li a0,0xa800
|
||||
.* dsll32 a0,a0,0x10
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,0\(a0\)
|
||||
.* lui a0,0x8000
|
||||
.* lw a0,0\(a0\)
|
||||
.* lui a0,0x8000
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,0\(a0\)
|
||||
.* lui a0,0x7fff
|
||||
.* lw a0,32760\(a0\)
|
||||
.* lui a0,0x7fff
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,32760\(a0\)
|
||||
.* li a0,0x8000
|
||||
.* dsll a0,a0,0x10
|
||||
.* lw a0,-8\(a0\)
|
||||
.* li a0,0x8000
|
||||
.* dsll a0,a0,0x10
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,-8\(a0\)
|
||||
.* lui a0,0x1234
|
||||
.* ori a0,a0,0x5678
|
||||
.* dsll a0,a0,0x10
|
||||
.* ori a0,a0,0x9abd
|
||||
.* dsll a0,a0,0x10
|
||||
.* lw a0,-8464\(a0\)
|
||||
.* lui a0,0x1234
|
||||
.* ori a0,a0,0x5678
|
||||
.* dsll a0,a0,0x10
|
||||
.* ori a0,a0,0x9abd
|
||||
.* dsll a0,a0,0x10
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,-8464\(a0\)
|
||||
#
|
||||
# lw small_comm
|
||||
#
|
||||
.* lw a0,0\(gp\)
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* daddu a0,v1,gp
|
||||
.* lw a0,0\(a0\)
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* lw a0,3\(gp\)
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* daddu a0,v1,gp
|
||||
.* lw a0,3\(a0\)
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
#
|
||||
# lw big_comm
|
||||
#
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* lw a0,0\(a0\)
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,0\(a0\)
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* lw a0,3\(a0\)
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,3\(a0\)
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
#
|
||||
# lw small_data
|
||||
#
|
||||
.* lw a0,0\(gp\)
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* daddu a0,v1,gp
|
||||
.* lw a0,0\(a0\)
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* lw a0,3\(gp\)
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* daddu a0,v1,gp
|
||||
.* lw a0,3\(a0\)
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
#
|
||||
# lw big_data
|
||||
#
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* lw a0,0\(a0\)
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,0\(a0\)
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* lw a0,3\(a0\)
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,3\(a0\)
|
||||
.*: R_MIPS_LO16 big_data
|
||||
#
|
||||
# lw extern
|
||||
#
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* lw a0,0\(a0\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,0\(a0\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui a0,0x3
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* lw a0,16384\(a0\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui a0,0x3
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,16384\(a0\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui a0,0xfffd
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* lw a0,-16384\(a0\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui a0,0xfffd
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* daddu a0,a0,v1
|
||||
.* lw a0,-16384\(a0\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
#
|
||||
# sw constants
|
||||
#
|
||||
.* li at,0xa800
|
||||
.* dsll32 at,at,0x10
|
||||
.* sw a0,0\(at\)
|
||||
.* li at,0xa800
|
||||
.* dsll32 at,at,0x10
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,0\(at\)
|
||||
.* lui at,0x8000
|
||||
.* sw a0,0\(at\)
|
||||
.* lui at,0x8000
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,0\(at\)
|
||||
.* lui at,0x7fff
|
||||
.* sw a0,32760\(at\)
|
||||
.* lui at,0x7fff
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,32760\(at\)
|
||||
.* li at,0x8000
|
||||
.* dsll at,at,0x10
|
||||
.* sw a0,-8\(at\)
|
||||
.* li at,0x8000
|
||||
.* dsll at,at,0x10
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,-8\(at\)
|
||||
.* lui at,0x1234
|
||||
.* ori at,at,0x5678
|
||||
.* dsll at,at,0x10
|
||||
.* ori at,at,0x9abd
|
||||
.* dsll at,at,0x10
|
||||
.* sw a0,-8464\(at\)
|
||||
.* lui at,0x1234
|
||||
.* ori at,at,0x5678
|
||||
.* dsll at,at,0x10
|
||||
.* ori at,at,0x9abd
|
||||
.* dsll at,at,0x10
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,-8464\(at\)
|
||||
#
|
||||
# sw small_comm
|
||||
#
|
||||
.* sw a0,0\(gp\)
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* daddu at,v1,gp
|
||||
.* sw a0,0\(at\)
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* sw a0,3\(gp\)
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* daddu at,v1,gp
|
||||
.* sw a0,3\(at\)
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
#
|
||||
# sw big_comm
|
||||
#
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* sw a0,0\(at\)
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,0\(at\)
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* sw a0,3\(at\)
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,3\(at\)
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
#
|
||||
# sw small_data
|
||||
#
|
||||
.* sw a0,0\(gp\)
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* daddu at,v1,gp
|
||||
.* sw a0,0\(at\)
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* sw a0,3\(gp\)
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* daddu at,v1,gp
|
||||
.* sw a0,3\(at\)
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
#
|
||||
# sw big_data
|
||||
#
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* sw a0,0\(at\)
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,0\(at\)
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* sw a0,3\(at\)
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,3\(at\)
|
||||
.*: R_MIPS_LO16 big_data
|
||||
#
|
||||
# sw extern
|
||||
#
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* sw a0,0\(at\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,0\(at\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui at,0x3
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* sw a0,16384\(at\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui at,0x3
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,16384\(at\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui at,0xfffd
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* sw a0,-16384\(at\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui at,0xfffd
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* daddu at,at,v1
|
||||
.* sw a0,-16384\(at\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
#
|
||||
# usw constants
|
||||
#
|
||||
.* li at,0xa800
|
||||
.* dsll32 at,at,0x10
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* li at,0xa800
|
||||
.* dsll32 at,at,0x10
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x8000
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x8000
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x7fff
|
||||
.* ori at,at,0x7ff8
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x7fff
|
||||
.* ori at,at,0x7ff8
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x7fff
|
||||
.* ori at,at,0xfff8
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x7fff
|
||||
.* ori at,at,0xfff8
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x1234
|
||||
.* ori at,at,0x5678
|
||||
.* dsll at,at,0x10
|
||||
.* ori at,at,0x9abc
|
||||
.* dsll at,at,0x10
|
||||
.* ori at,at,0xdef0
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x1234
|
||||
.* ori at,at,0x5678
|
||||
.* dsll at,at,0x10
|
||||
.* ori at,at,0x9abc
|
||||
.* dsll at,at,0x10
|
||||
.* ori at,at,0xdef0
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
#
|
||||
# usw small_comm
|
||||
#
|
||||
.* daddiu at,gp,0
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* daddiu at,gp,0
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* daddiu at,gp,3
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* daddiu at,gp,3
|
||||
.*: R_MIPS_GPREL16 small_comm
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
#
|
||||
# usw big_comm
|
||||
#
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* d?addiu at,at,0
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* d?addiu at,at,0
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* d?addiu at,at,3
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_comm
|
||||
.* d?addiu at,at,3
|
||||
.*: R_MIPS_LO16 big_comm
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
#
|
||||
# usw small_data
|
||||
#
|
||||
.* daddiu at,gp,0
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* daddiu at,gp,0
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* daddiu at,gp,3
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* daddiu at,gp,3
|
||||
.*: R_MIPS_GPREL16 small_data
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
#
|
||||
# usw big_data
|
||||
#
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* d?addiu at,at,0
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* d?addiu at,at,0
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* d?addiu at,at,3
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 big_data
|
||||
.* d?addiu at,at,3
|
||||
.*: R_MIPS_LO16 big_data
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
#
|
||||
# usw extern
|
||||
#
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu at,at,0
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu at,at,0
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x3
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu at,at,16384
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0x3
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu at,at,16384
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0xfffd
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu at,at,-16384
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
.* lui at,0xfffd
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* d?addiu at,at,-16384
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* daddu at,at,v1
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
#
|
||||
# with sym32 off (has no effect for EABI64)
|
||||
#
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* daddiu a0,a0,0
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* lw a0,0\(a0\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* sw a0,0\(at\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* daddiu at,at,0
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
#
|
||||
# ...and back on again
|
||||
#
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* daddiu a0,a0,0
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui a0,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* lw a0,0\(a0\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* sw a0,0\(at\)
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* lui at,0x0
|
||||
.*: R_MIPS_HI16 extern
|
||||
.* daddiu at,at,0
|
||||
.*: R_MIPS_LO16 extern
|
||||
.* swl a0,0\(at\)
|
||||
.* swr a0,3\(at\)
|
||||
#pass
|
@ -1,154 +0,0 @@
|
||||
#objdump: -d
|
||||
#as: -KPIC -n32
|
||||
#name: MIPS ld-st-la constants (ABI n32, shared)
|
||||
#source: ldstla-n32.s
|
||||
|
||||
.*: +file format elf32-n.*mips
|
||||
|
||||
Disassembly of section \.text:
|
||||
|
||||
00000000 <\.text>:
|
||||
0: 3c020123 lui v0,0x123
|
||||
4: 3c0189ac lui at,0x89ac
|
||||
8: 64424568 daddiu v0,v0,17768
|
||||
c: 0023082d daddu at,at,v1
|
||||
10: 0002103c dsll32 v0,v0,0x0
|
||||
14: 0041102d daddu v0,v0,at
|
||||
18: dc42cdef ld v0,-12817\(v0\)
|
||||
1c: 3c02abce lui v0,0xabce
|
||||
20: 3c012345 lui at,0x2345
|
||||
24: 6442ef01 daddiu v0,v0,-4351
|
||||
28: 0023082d daddu at,at,v1
|
||||
2c: 0002103c dsll32 v0,v0,0x0
|
||||
30: 0041102d daddu v0,v0,at
|
||||
34: dc426789 ld v0,26505\(v0\)
|
||||
38: 3c028000 lui v0,0x8000
|
||||
3c: 00431021 addu v0,v0,v1
|
||||
40: dc420000 ld v0,0\(v0\)
|
||||
44: 3c020000 lui v0,0x0
|
||||
48: 3c010000 lui at,0x0
|
||||
4c: 6442ffff daddiu v0,v0,-1
|
||||
50: 0023082d daddu at,at,v1
|
||||
54: 0002103c dsll32 v0,v0,0x0
|
||||
58: 0041102d daddu v0,v0,at
|
||||
5c: dc420000 ld v0,0\(v0\)
|
||||
60: 3c020000 lui v0,0x0
|
||||
64: 3c01abce lui at,0xabce
|
||||
68: 64420001 daddiu v0,v0,1
|
||||
6c: 0023082d daddu at,at,v1
|
||||
70: 0002103c dsll32 v0,v0,0x0
|
||||
74: 0041102d daddu v0,v0,at
|
||||
78: dc42ef01 ld v0,-4351\(v0\)
|
||||
7c: 3c020123 lui v0,0x123
|
||||
80: 00431021 addu v0,v0,v1
|
||||
84: dc424567 ld v0,17767\(v0\)
|
||||
88: 3c010123 lui at,0x123
|
||||
8c: 64214568 daddiu at,at,17768
|
||||
90: 00010c38 dsll at,at,0x10
|
||||
94: 642189ac daddiu at,at,-30292
|
||||
98: 00010c38 dsll at,at,0x10
|
||||
9c: 0023082d daddu at,at,v1
|
||||
a0: fc22cdef sd v0,-12817\(at\)
|
||||
a4: 3c01abce lui at,0xabce
|
||||
a8: 6421ef01 daddiu at,at,-4351
|
||||
ac: 00010c38 dsll at,at,0x10
|
||||
b0: 64212345 daddiu at,at,9029
|
||||
b4: 00010c38 dsll at,at,0x10
|
||||
b8: 0023082d daddu at,at,v1
|
||||
bc: fc226789 sd v0,26505\(at\)
|
||||
c0: 3c018000 lui at,0x8000
|
||||
c4: 00230821 addu at,at,v1
|
||||
c8: fc220000 sd v0,0\(at\)
|
||||
cc: 3c010000 lui at,0x0
|
||||
d0: 6421ffff daddiu at,at,-1
|
||||
d4: 00010c38 dsll at,at,0x10
|
||||
d8: 64210000 daddiu at,at,0
|
||||
dc: 00010c38 dsll at,at,0x10
|
||||
e0: 0023082d daddu at,at,v1
|
||||
e4: fc220000 sd v0,0\(at\)
|
||||
e8: 3c010000 lui at,0x0
|
||||
ec: 64210001 daddiu at,at,1
|
||||
f0: 00010c38 dsll at,at,0x10
|
||||
f4: 6421abce daddiu at,at,-21554
|
||||
f8: 00010c38 dsll at,at,0x10
|
||||
fc: 0023082d daddu at,at,v1
|
||||
100: fc22ef01 sd v0,-4351\(at\)
|
||||
104: 3c010123 lui at,0x123
|
||||
108: 00230821 addu at,at,v1
|
||||
10c: fc224567 sd v0,17767\(at\)
|
||||
110: 3c020123 lui v0,0x123
|
||||
114: 3c0189ac lui at,0x89ac
|
||||
118: 64424568 daddiu v0,v0,17768
|
||||
11c: 0023082d daddu at,at,v1
|
||||
120: 0002103c dsll32 v0,v0,0x0
|
||||
124: 0041102d daddu v0,v0,at
|
||||
128: 8c42cdef lw v0,-12817\(v0\)
|
||||
12c: 3c02abce lui v0,0xabce
|
||||
130: 3c012345 lui at,0x2345
|
||||
134: 6442ef01 daddiu v0,v0,-4351
|
||||
138: 0023082d daddu at,at,v1
|
||||
13c: 0002103c dsll32 v0,v0,0x0
|
||||
140: 0041102d daddu v0,v0,at
|
||||
144: 8c426789 lw v0,26505\(v0\)
|
||||
148: 3c028000 lui v0,0x8000
|
||||
14c: 00431021 addu v0,v0,v1
|
||||
150: 8c420000 lw v0,0\(v0\)
|
||||
154: 3c020000 lui v0,0x0
|
||||
158: 3c010000 lui at,0x0
|
||||
15c: 6442ffff daddiu v0,v0,-1
|
||||
160: 0023082d daddu at,at,v1
|
||||
164: 0002103c dsll32 v0,v0,0x0
|
||||
168: 0041102d daddu v0,v0,at
|
||||
16c: 8c420000 lw v0,0\(v0\)
|
||||
170: 3c020000 lui v0,0x0
|
||||
174: 3c01abce lui at,0xabce
|
||||
178: 64420001 daddiu v0,v0,1
|
||||
17c: 0023082d daddu at,at,v1
|
||||
180: 0002103c dsll32 v0,v0,0x0
|
||||
184: 0041102d daddu v0,v0,at
|
||||
188: 8c42ef01 lw v0,-4351\(v0\)
|
||||
18c: 3c020123 lui v0,0x123
|
||||
190: 00431021 addu v0,v0,v1
|
||||
194: 8c424567 lw v0,17767\(v0\)
|
||||
198: 3c010123 lui at,0x123
|
||||
19c: 64214568 daddiu at,at,17768
|
||||
1a0: 00010c38 dsll at,at,0x10
|
||||
1a4: 642189ac daddiu at,at,-30292
|
||||
1a8: 00010c38 dsll at,at,0x10
|
||||
1ac: 0023082d daddu at,at,v1
|
||||
1b0: ac22cdef sw v0,-12817\(at\)
|
||||
1b4: 3c01abce lui at,0xabce
|
||||
1b8: 6421ef01 daddiu at,at,-4351
|
||||
1bc: 00010c38 dsll at,at,0x10
|
||||
1c0: 64212345 daddiu at,at,9029
|
||||
1c4: 00010c38 dsll at,at,0x10
|
||||
1c8: 0023082d daddu at,at,v1
|
||||
1cc: ac226789 sw v0,26505\(at\)
|
||||
1d0: 3c018000 lui at,0x8000
|
||||
1d4: 00230821 addu at,at,v1
|
||||
1d8: ac220000 sw v0,0\(at\)
|
||||
1dc: 3c010000 lui at,0x0
|
||||
1e0: 6421ffff daddiu at,at,-1
|
||||
1e4: 00010c38 dsll at,at,0x10
|
||||
1e8: 64210000 daddiu at,at,0
|
||||
1ec: 00010c38 dsll at,at,0x10
|
||||
1f0: 0023082d daddu at,at,v1
|
||||
1f4: ac220000 sw v0,0\(at\)
|
||||
1f8: 3c010000 lui at,0x0
|
||||
1fc: 64210001 daddiu at,at,1
|
||||
200: 00010c38 dsll at,at,0x10
|
||||
204: 6421abce daddiu at,at,-21554
|
||||
208: 00010c38 dsll at,at,0x10
|
||||
20c: 0023082d daddu at,at,v1
|
||||
210: ac22ef01 sw v0,-4351\(at\)
|
||||
214: 3c010123 lui at,0x123
|
||||
218: 00230821 addu at,at,v1
|
||||
21c: ac224567 sw v0,17767\(at\)
|
||||
220: 3c028000 lui v0,0x8000
|
||||
224: 3c020123 lui v0,0x123
|
||||
228: 34424567 ori v0,v0,0x4567
|
||||
22c: 3c027fff lui v0,0x7fff
|
||||
230: 3442ffff ori v0,v0,0xffff
|
||||
234: 3c020123 lui v0,0x123
|
||||
238: 34424567 ori v0,v0,0x4567
|
||||
\.\.\.
|
@ -1,154 +0,0 @@
|
||||
#objdump: -d
|
||||
#as: -n32
|
||||
#name: MIPS ld-st-la constants (ABI n32)
|
||||
#source: ldstla-n32.s
|
||||
|
||||
.*: +file format elf32-n.*mips
|
||||
|
||||
Disassembly of section \.text:
|
||||
|
||||
00000000 <\.text>:
|
||||
0: 3c020123 lui v0,0x123
|
||||
4: 3c0189ac lui at,0x89ac
|
||||
8: 64424568 daddiu v0,v0,17768
|
||||
c: 0023082d daddu at,at,v1
|
||||
10: 0002103c dsll32 v0,v0,0x0
|
||||
14: 0041102d daddu v0,v0,at
|
||||
18: dc42cdef ld v0,-12817\(v0\)
|
||||
1c: 3c02abce lui v0,0xabce
|
||||
20: 3c012345 lui at,0x2345
|
||||
24: 6442ef01 daddiu v0,v0,-4351
|
||||
28: 0023082d daddu at,at,v1
|
||||
2c: 0002103c dsll32 v0,v0,0x0
|
||||
30: 0041102d daddu v0,v0,at
|
||||
34: dc426789 ld v0,26505\(v0\)
|
||||
38: 3c028000 lui v0,0x8000
|
||||
3c: 00431021 addu v0,v0,v1
|
||||
40: dc420000 ld v0,0\(v0\)
|
||||
44: 3c020000 lui v0,0x0
|
||||
48: 3c010000 lui at,0x0
|
||||
4c: 6442ffff daddiu v0,v0,-1
|
||||
50: 0023082d daddu at,at,v1
|
||||
54: 0002103c dsll32 v0,v0,0x0
|
||||
58: 0041102d daddu v0,v0,at
|
||||
5c: dc420000 ld v0,0\(v0\)
|
||||
60: 3c020000 lui v0,0x0
|
||||
64: 3c01abce lui at,0xabce
|
||||
68: 64420001 daddiu v0,v0,1
|
||||
6c: 0023082d daddu at,at,v1
|
||||
70: 0002103c dsll32 v0,v0,0x0
|
||||
74: 0041102d daddu v0,v0,at
|
||||
78: dc42ef01 ld v0,-4351\(v0\)
|
||||
7c: 3c020123 lui v0,0x123
|
||||
80: 00431021 addu v0,v0,v1
|
||||
84: dc424567 ld v0,17767\(v0\)
|
||||
88: 3c010123 lui at,0x123
|
||||
8c: 64214568 daddiu at,at,17768
|
||||
90: 00010c38 dsll at,at,0x10
|
||||
94: 642189ac daddiu at,at,-30292
|
||||
98: 00010c38 dsll at,at,0x10
|
||||
9c: 0023082d daddu at,at,v1
|
||||
a0: fc22cdef sd v0,-12817\(at\)
|
||||
a4: 3c01abce lui at,0xabce
|
||||
a8: 6421ef01 daddiu at,at,-4351
|
||||
ac: 00010c38 dsll at,at,0x10
|
||||
b0: 64212345 daddiu at,at,9029
|
||||
b4: 00010c38 dsll at,at,0x10
|
||||
b8: 0023082d daddu at,at,v1
|
||||
bc: fc226789 sd v0,26505\(at\)
|
||||
c0: 3c018000 lui at,0x8000
|
||||
c4: 00230821 addu at,at,v1
|
||||
c8: fc220000 sd v0,0\(at\)
|
||||
cc: 3c010000 lui at,0x0
|
||||
d0: 6421ffff daddiu at,at,-1
|
||||
d4: 00010c38 dsll at,at,0x10
|
||||
d8: 64210000 daddiu at,at,0
|
||||
dc: 00010c38 dsll at,at,0x10
|
||||
e0: 0023082d daddu at,at,v1
|
||||
e4: fc220000 sd v0,0\(at\)
|
||||
e8: 3c010000 lui at,0x0
|
||||
ec: 64210001 daddiu at,at,1
|
||||
f0: 00010c38 dsll at,at,0x10
|
||||
f4: 6421abce daddiu at,at,-21554
|
||||
f8: 00010c38 dsll at,at,0x10
|
||||
fc: 0023082d daddu at,at,v1
|
||||
100: fc22ef01 sd v0,-4351\(at\)
|
||||
104: 3c010123 lui at,0x123
|
||||
108: 00230821 addu at,at,v1
|
||||
10c: fc224567 sd v0,17767\(at\)
|
||||
110: 3c020123 lui v0,0x123
|
||||
114: 3c0189ac lui at,0x89ac
|
||||
118: 64424568 daddiu v0,v0,17768
|
||||
11c: 0023082d daddu at,at,v1
|
||||
120: 0002103c dsll32 v0,v0,0x0
|
||||
124: 0041102d daddu v0,v0,at
|
||||
128: 8c42cdef lw v0,-12817\(v0\)
|
||||
12c: 3c02abce lui v0,0xabce
|
||||
130: 3c012345 lui at,0x2345
|
||||
134: 6442ef01 daddiu v0,v0,-4351
|
||||
138: 0023082d daddu at,at,v1
|
||||
13c: 0002103c dsll32 v0,v0,0x0
|
||||
140: 0041102d daddu v0,v0,at
|
||||
144: 8c426789 lw v0,26505\(v0\)
|
||||
148: 3c028000 lui v0,0x8000
|
||||
14c: 00431021 addu v0,v0,v1
|
||||
150: 8c420000 lw v0,0\(v0\)
|
||||
154: 3c020000 lui v0,0x0
|
||||
158: 3c010000 lui at,0x0
|
||||
15c: 6442ffff daddiu v0,v0,-1
|
||||
160: 0023082d daddu at,at,v1
|
||||
164: 0002103c dsll32 v0,v0,0x0
|
||||
168: 0041102d daddu v0,v0,at
|
||||
16c: 8c420000 lw v0,0\(v0\)
|
||||
170: 3c020000 lui v0,0x0
|
||||
174: 3c01abce lui at,0xabce
|
||||
178: 64420001 daddiu v0,v0,1
|
||||
17c: 0023082d daddu at,at,v1
|
||||
180: 0002103c dsll32 v0,v0,0x0
|
||||
184: 0041102d daddu v0,v0,at
|
||||
188: 8c42ef01 lw v0,-4351\(v0\)
|
||||
18c: 3c020123 lui v0,0x123
|
||||
190: 00431021 addu v0,v0,v1
|
||||
194: 8c424567 lw v0,17767\(v0\)
|
||||
198: 3c010123 lui at,0x123
|
||||
19c: 64214568 daddiu at,at,17768
|
||||
1a0: 00010c38 dsll at,at,0x10
|
||||
1a4: 642189ac daddiu at,at,-30292
|
||||
1a8: 00010c38 dsll at,at,0x10
|
||||
1ac: 0023082d daddu at,at,v1
|
||||
1b0: ac22cdef sw v0,-12817\(at\)
|
||||
1b4: 3c01abce lui at,0xabce
|
||||
1b8: 6421ef01 daddiu at,at,-4351
|
||||
1bc: 00010c38 dsll at,at,0x10
|
||||
1c0: 64212345 daddiu at,at,9029
|
||||
1c4: 00010c38 dsll at,at,0x10
|
||||
1c8: 0023082d daddu at,at,v1
|
||||
1cc: ac226789 sw v0,26505\(at\)
|
||||
1d0: 3c018000 lui at,0x8000
|
||||
1d4: 00230821 addu at,at,v1
|
||||
1d8: ac220000 sw v0,0\(at\)
|
||||
1dc: 3c010000 lui at,0x0
|
||||
1e0: 6421ffff daddiu at,at,-1
|
||||
1e4: 00010c38 dsll at,at,0x10
|
||||
1e8: 64210000 daddiu at,at,0
|
||||
1ec: 00010c38 dsll at,at,0x10
|
||||
1f0: 0023082d daddu at,at,v1
|
||||
1f4: ac220000 sw v0,0\(at\)
|
||||
1f8: 3c010000 lui at,0x0
|
||||
1fc: 64210001 daddiu at,at,1
|
||||
200: 00010c38 dsll at,at,0x10
|
||||
204: 6421abce daddiu at,at,-21554
|
||||
208: 00010c38 dsll at,at,0x10
|
||||
20c: 0023082d daddu at,at,v1
|
||||
210: ac22ef01 sw v0,-4351\(at\)
|
||||
214: 3c010123 lui at,0x123
|
||||
218: 00230821 addu at,at,v1
|
||||
21c: ac224567 sw v0,17767\(at\)
|
||||
220: 3c028000 lui v0,0x8000
|
||||
224: 3c020123 lui v0,0x123
|
||||
228: 34424567 ori v0,v0,0x4567
|
||||
22c: 3c027fff lui v0,0x7fff
|
||||
230: 3442ffff ori v0,v0,0xffff
|
||||
234: 3c020123 lui v0,0x123
|
||||
238: 34424567 ori v0,v0,0x4567
|
||||
\.\.\.
|
@ -1,35 +0,0 @@
|
||||
.text
|
||||
ld $2, 0x0123456789abcdef($3)
|
||||
ld $2, 0xabcdef0123456789($3)
|
||||
ld $2, 0xffffffff80000000($3)
|
||||
ld $2, 0xffffffff00000000($3)
|
||||
ld $2, 0xabcdef01($3)
|
||||
ld $2, 0x01234567($3)
|
||||
|
||||
sd $2, 0x0123456789abcdef($3)
|
||||
sd $2, 0xabcdef0123456789($3)
|
||||
sd $2, 0xffffffff80000000($3)
|
||||
sd $2, 0xffffffff00000000($3)
|
||||
sd $2, 0xabcdef01($3)
|
||||
sd $2, 0x01234567($3)
|
||||
|
||||
lw $2, 0x0123456789abcdef($3)
|
||||
lw $2, 0xabcdef0123456789($3)
|
||||
lw $2, 0xffffffff80000000($3)
|
||||
lw $2, 0xffffffff00000000($3)
|
||||
lw $2, 0xabcdef01($3)
|
||||
lw $2, 0x01234567($3)
|
||||
|
||||
sw $2, 0x0123456789abcdef($3)
|
||||
sw $2, 0xabcdef0123456789($3)
|
||||
sw $2, 0xffffffff80000000($3)
|
||||
sw $2, 0xffffffff00000000($3)
|
||||
sw $2, 0xabcdef01($3)
|
||||
sw $2, 0x01234567($3)
|
||||
|
||||
dla $2, 0xffffffff80000000
|
||||
dla $2, 0x01234567
|
||||
la $2, 0x7fffffff
|
||||
la $2, 0x01234567
|
||||
|
||||
.space 8
|
@ -9,173 +9,149 @@ Disassembly of section \.text:
|
||||
|
||||
0000000000000000 <\.text>:
|
||||
0: 3c020123 lui v0,0x123
|
||||
4: 3c0189ac lui at,0x89ac
|
||||
8: 64424568 daddiu v0,v0,17768
|
||||
c: 0023082d daddu at,at,v1
|
||||
10: 0002103c dsll32 v0,v0,0x0
|
||||
14: 0041102d daddu v0,v0,at
|
||||
4: 34424567 ori v0,v0,0x4567
|
||||
8: 00021438 dsll v0,v0,0x10
|
||||
c: 344289ac ori v0,v0,0x89ac
|
||||
10: 00021438 dsll v0,v0,0x10
|
||||
14: 0043102d daddu v0,v0,v1
|
||||
18: dc42cdef ld v0,-12817\(v0\)
|
||||
1c: 3c02abce lui v0,0xabce
|
||||
20: 3c012345 lui at,0x2345
|
||||
24: 6442ef01 daddiu v0,v0,-4351
|
||||
28: 0023082d daddu at,at,v1
|
||||
2c: 0002103c dsll32 v0,v0,0x0
|
||||
30: 0041102d daddu v0,v0,at
|
||||
1c: 3c02abcd lui v0,0xabcd
|
||||
20: 3442ef01 ori v0,v0,0xef01
|
||||
24: 00021438 dsll v0,v0,0x10
|
||||
28: 34422345 ori v0,v0,0x2345
|
||||
2c: 00021438 dsll v0,v0,0x10
|
||||
30: 0043102d daddu v0,v0,v1
|
||||
34: dc426789 ld v0,26505\(v0\)
|
||||
38: 3c028000 lui v0,0x8000
|
||||
3c: 0043102d daddu v0,v0,v1
|
||||
40: dc420000 ld v0,0\(v0\)
|
||||
44: 3c020000 lui v0,0x0
|
||||
48: 3c010000 lui at,0x0
|
||||
4c: 6442ffff daddiu v0,v0,-1
|
||||
50: 0023082d daddu at,at,v1
|
||||
54: 0002103c dsll32 v0,v0,0x0
|
||||
58: 0041102d daddu v0,v0,at
|
||||
5c: dc420000 ld v0,0\(v0\)
|
||||
60: 3c028000 lui v0,0x8000
|
||||
64: 0043102d daddu v0,v0,v1
|
||||
68: dc42ffff ld v0,-1\(v0\)
|
||||
6c: 3c020000 lui v0,0x0
|
||||
70: 3c01abce lui at,0xabce
|
||||
74: 64420001 daddiu v0,v0,1
|
||||
78: 0023082d daddu at,at,v1
|
||||
7c: 0002103c dsll32 v0,v0,0x0
|
||||
80: 0041102d daddu v0,v0,at
|
||||
84: dc42ef01 ld v0,-4351\(v0\)
|
||||
88: 3c020123 lui v0,0x123
|
||||
8c: 0043102d daddu v0,v0,v1
|
||||
90: dc424567 ld v0,17767\(v0\)
|
||||
94: 3c010123 lui at,0x123
|
||||
98: 64214568 daddiu at,at,17768
|
||||
9c: 00010c38 dsll at,at,0x10
|
||||
a0: 642189ac daddiu at,at,-30292
|
||||
a4: 00010c38 dsll at,at,0x10
|
||||
a8: 0023082d daddu at,at,v1
|
||||
ac: fc22cdef sd v0,-12817\(at\)
|
||||
b0: 3c01abce lui at,0xabce
|
||||
b4: 6421ef01 daddiu at,at,-4351
|
||||
b8: 00010c38 dsll at,at,0x10
|
||||
bc: 64212345 daddiu at,at,9029
|
||||
c0: 00010c38 dsll at,at,0x10
|
||||
c4: 0023082d daddu at,at,v1
|
||||
c8: fc226789 sd v0,26505\(at\)
|
||||
cc: 3c018000 lui at,0x8000
|
||||
d0: 0023082d daddu at,at,v1
|
||||
d4: fc220000 sd v0,0\(at\)
|
||||
d8: 3c010000 lui at,0x0
|
||||
dc: 6421ffff daddiu at,at,-1
|
||||
44: 2402ffff li v0,-1
|
||||
48: 0002103c dsll32 v0,v0,0x0
|
||||
4c: 0043102d daddu v0,v0,v1
|
||||
50: dc420000 ld v0,0\(v0\)
|
||||
54: 3c028000 lui v0,0x8000
|
||||
58: 0043102d daddu v0,v0,v1
|
||||
5c: dc42ffff ld v0,-1\(v0\)
|
||||
60: 3402abce li v0,0xabce
|
||||
64: 00021438 dsll v0,v0,0x10
|
||||
68: 0043102d daddu v0,v0,v1
|
||||
6c: dc42ef01 ld v0,-4351\(v0\)
|
||||
70: 3c020123 lui v0,0x123
|
||||
74: 0043102d daddu v0,v0,v1
|
||||
78: dc424567 ld v0,17767\(v0\)
|
||||
7c: 3c010123 lui at,0x123
|
||||
80: 34214567 ori at,at,0x4567
|
||||
84: 00010c38 dsll at,at,0x10
|
||||
88: 342189ac ori at,at,0x89ac
|
||||
8c: 00010c38 dsll at,at,0x10
|
||||
90: 0023082d daddu at,at,v1
|
||||
94: fc22cdef sd v0,-12817\(at\)
|
||||
98: 3c01abcd lui at,0xabcd
|
||||
9c: 3421ef01 ori at,at,0xef01
|
||||
a0: 00010c38 dsll at,at,0x10
|
||||
a4: 34212345 ori at,at,0x2345
|
||||
a8: 00010c38 dsll at,at,0x10
|
||||
ac: 0023082d daddu at,at,v1
|
||||
b0: fc226789 sd v0,26505\(at\)
|
||||
b4: 3c018000 lui at,0x8000
|
||||
b8: 0023082d daddu at,at,v1
|
||||
bc: fc220000 sd v0,0\(at\)
|
||||
c0: 2401ffff li at,-1
|
||||
c4: 0001083c dsll32 at,at,0x0
|
||||
c8: 0023082d daddu at,at,v1
|
||||
cc: fc220000 sd v0,0\(at\)
|
||||
d0: 3c018000 lui at,0x8000
|
||||
d4: 0023082d daddu at,at,v1
|
||||
d8: fc22ffff sd v0,-1\(at\)
|
||||
dc: 3401abce li at,0xabce
|
||||
e0: 00010c38 dsll at,at,0x10
|
||||
e4: 64210000 daddiu at,at,0
|
||||
e8: 00010c38 dsll at,at,0x10
|
||||
ec: 0023082d daddu at,at,v1
|
||||
f0: fc220000 sd v0,0\(at\)
|
||||
f4: 3c018000 lui at,0x8000
|
||||
f8: 0023082d daddu at,at,v1
|
||||
fc: fc22ffff sd v0,-1\(at\)
|
||||
100: 3c010000 lui at,0x0
|
||||
104: 64210001 daddiu at,at,1
|
||||
108: 00010c38 dsll at,at,0x10
|
||||
10c: 6421abce daddiu at,at,-21554
|
||||
110: 00010c38 dsll at,at,0x10
|
||||
114: 0023082d daddu at,at,v1
|
||||
118: fc22ef01 sd v0,-4351\(at\)
|
||||
11c: 3c010123 lui at,0x123
|
||||
120: 0023082d daddu at,at,v1
|
||||
124: fc224567 sd v0,17767\(at\)
|
||||
128: 3c020123 lui v0,0x123
|
||||
12c: 3c0189ac lui at,0x89ac
|
||||
130: 64424568 daddiu v0,v0,17768
|
||||
134: 0023082d daddu at,at,v1
|
||||
138: 0002103c dsll32 v0,v0,0x0
|
||||
13c: 0041102d daddu v0,v0,at
|
||||
140: 8c42cdef lw v0,-12817\(v0\)
|
||||
144: 3c02abce lui v0,0xabce
|
||||
148: 3c012345 lui at,0x2345
|
||||
14c: 6442ef01 daddiu v0,v0,-4351
|
||||
150: 0023082d daddu at,at,v1
|
||||
154: 0002103c dsll32 v0,v0,0x0
|
||||
158: 0041102d daddu v0,v0,at
|
||||
15c: 8c426789 lw v0,26505\(v0\)
|
||||
160: 3c028000 lui v0,0x8000
|
||||
164: 0043102d daddu v0,v0,v1
|
||||
168: 8c420000 lw v0,0\(v0\)
|
||||
16c: 3c020000 lui v0,0x0
|
||||
170: 3c010000 lui at,0x0
|
||||
174: 6442ffff daddiu v0,v0,-1
|
||||
178: 0023082d daddu at,at,v1
|
||||
17c: 0002103c dsll32 v0,v0,0x0
|
||||
180: 0041102d daddu v0,v0,at
|
||||
184: 8c420000 lw v0,0\(v0\)
|
||||
188: 3c028000 lui v0,0x8000
|
||||
18c: 0043102d daddu v0,v0,v1
|
||||
190: 8c42ffff lw v0,-1\(v0\)
|
||||
194: 3c020000 lui v0,0x0
|
||||
198: 3c01abce lui at,0xabce
|
||||
19c: 64420001 daddiu v0,v0,1
|
||||
1a0: 0023082d daddu at,at,v1
|
||||
1a4: 0002103c dsll32 v0,v0,0x0
|
||||
1a8: 0041102d daddu v0,v0,at
|
||||
1ac: 8c42ef01 lw v0,-4351\(v0\)
|
||||
1b0: 3c020123 lui v0,0x123
|
||||
1b4: 0043102d daddu v0,v0,v1
|
||||
1b8: 8c424567 lw v0,17767\(v0\)
|
||||
1bc: 3c010123 lui at,0x123
|
||||
1c0: 64214568 daddiu at,at,17768
|
||||
1c4: 00010c38 dsll at,at,0x10
|
||||
1c8: 642189ac daddiu at,at,-30292
|
||||
1cc: 00010c38 dsll at,at,0x10
|
||||
1d0: 0023082d daddu at,at,v1
|
||||
1d4: ac22cdef sw v0,-12817\(at\)
|
||||
1d8: 3c01abce lui at,0xabce
|
||||
1dc: 6421ef01 daddiu at,at,-4351
|
||||
1e0: 00010c38 dsll at,at,0x10
|
||||
1e4: 64212345 daddiu at,at,9029
|
||||
1e8: 00010c38 dsll at,at,0x10
|
||||
1ec: 0023082d daddu at,at,v1
|
||||
1f0: ac226789 sw v0,26505\(at\)
|
||||
1f4: 3c018000 lui at,0x8000
|
||||
1f8: 0023082d daddu at,at,v1
|
||||
1fc: ac220000 sw v0,0\(at\)
|
||||
200: 3c010000 lui at,0x0
|
||||
204: 6421ffff daddiu at,at,-1
|
||||
208: 00010c38 dsll at,at,0x10
|
||||
20c: 64210000 daddiu at,at,0
|
||||
210: 00010c38 dsll at,at,0x10
|
||||
214: 0023082d daddu at,at,v1
|
||||
218: ac220000 sw v0,0\(at\)
|
||||
21c: 3c018000 lui at,0x8000
|
||||
220: 0023082d daddu at,at,v1
|
||||
224: ac22ffff sw v0,-1\(at\)
|
||||
228: 3c010000 lui at,0x0
|
||||
22c: 64210001 daddiu at,at,1
|
||||
230: 00010c38 dsll at,at,0x10
|
||||
234: 6421abce daddiu at,at,-21554
|
||||
238: 00010c38 dsll at,at,0x10
|
||||
23c: 0023082d daddu at,at,v1
|
||||
240: ac22ef01 sw v0,-4351\(at\)
|
||||
244: 3c010123 lui at,0x123
|
||||
248: 0023082d daddu at,at,v1
|
||||
24c: ac224567 sw v0,17767\(at\)
|
||||
250: 3c020123 lui v0,0x123
|
||||
254: 34424567 ori v0,v0,0x4567
|
||||
258: 00021438 dsll v0,v0,0x10
|
||||
25c: 344289ab ori v0,v0,0x89ab
|
||||
260: 00021438 dsll v0,v0,0x10
|
||||
264: 3442cdef ori v0,v0,0xcdef
|
||||
268: 3c02abcd lui v0,0xabcd
|
||||
26c: 3442ef01 ori v0,v0,0xef01
|
||||
270: 00021438 dsll v0,v0,0x10
|
||||
274: 34422345 ori v0,v0,0x2345
|
||||
278: 00021438 dsll v0,v0,0x10
|
||||
27c: 34426789 ori v0,v0,0x6789
|
||||
280: 3c028000 lui v0,0x8000
|
||||
284: 2402ffff li v0,-1
|
||||
288: 0002103c dsll32 v0,v0,0x0
|
||||
28c: 3402abcd li v0,0xabcd
|
||||
290: 00021438 dsll v0,v0,0x10
|
||||
294: 3442ef01 ori v0,v0,0xef01
|
||||
298: 3c027fff lui v0,0x7fff
|
||||
29c: 3442ffff ori v0,v0,0xffff
|
||||
2a0: 3c020123 lui v0,0x123
|
||||
2a4: 34424567 ori v0,v0,0x4567
|
||||
e4: 0023082d daddu at,at,v1
|
||||
e8: fc22ef01 sd v0,-4351\(at\)
|
||||
ec: 3c010123 lui at,0x123
|
||||
f0: 0023082d daddu at,at,v1
|
||||
f4: fc224567 sd v0,17767\(at\)
|
||||
f8: 3c020123 lui v0,0x123
|
||||
fc: 34424567 ori v0,v0,0x4567
|
||||
100: 00021438 dsll v0,v0,0x10
|
||||
104: 344289ac ori v0,v0,0x89ac
|
||||
108: 00021438 dsll v0,v0,0x10
|
||||
10c: 0043102d daddu v0,v0,v1
|
||||
110: 8c42cdef lw v0,-12817\(v0\)
|
||||
114: 3c02abcd lui v0,0xabcd
|
||||
118: 3442ef01 ori v0,v0,0xef01
|
||||
11c: 00021438 dsll v0,v0,0x10
|
||||
120: 34422345 ori v0,v0,0x2345
|
||||
124: 00021438 dsll v0,v0,0x10
|
||||
128: 0043102d daddu v0,v0,v1
|
||||
12c: 8c426789 lw v0,26505\(v0\)
|
||||
130: 3c028000 lui v0,0x8000
|
||||
134: 0043102d daddu v0,v0,v1
|
||||
138: 8c420000 lw v0,0\(v0\)
|
||||
13c: 2402ffff li v0,-1
|
||||
140: 0002103c dsll32 v0,v0,0x0
|
||||
144: 0043102d daddu v0,v0,v1
|
||||
148: 8c420000 lw v0,0\(v0\)
|
||||
14c: 3c028000 lui v0,0x8000
|
||||
150: 0043102d daddu v0,v0,v1
|
||||
154: 8c42ffff lw v0,-1\(v0\)
|
||||
158: 3402abce li v0,0xabce
|
||||
15c: 00021438 dsll v0,v0,0x10
|
||||
160: 0043102d daddu v0,v0,v1
|
||||
164: 8c42ef01 lw v0,-4351\(v0\)
|
||||
168: 3c020123 lui v0,0x123
|
||||
16c: 0043102d daddu v0,v0,v1
|
||||
170: 8c424567 lw v0,17767\(v0\)
|
||||
174: 3c010123 lui at,0x123
|
||||
178: 34214567 ori at,at,0x4567
|
||||
17c: 00010c38 dsll at,at,0x10
|
||||
180: 342189ac ori at,at,0x89ac
|
||||
184: 00010c38 dsll at,at,0x10
|
||||
188: 0023082d daddu at,at,v1
|
||||
18c: ac22cdef sw v0,-12817\(at\)
|
||||
190: 3c01abcd lui at,0xabcd
|
||||
194: 3421ef01 ori at,at,0xef01
|
||||
198: 00010c38 dsll at,at,0x10
|
||||
19c: 34212345 ori at,at,0x2345
|
||||
1a0: 00010c38 dsll at,at,0x10
|
||||
1a4: 0023082d daddu at,at,v1
|
||||
1a8: ac226789 sw v0,26505\(at\)
|
||||
1ac: 3c018000 lui at,0x8000
|
||||
1b0: 0023082d daddu at,at,v1
|
||||
1b4: ac220000 sw v0,0\(at\)
|
||||
1b8: 2401ffff li at,-1
|
||||
1bc: 0001083c dsll32 at,at,0x0
|
||||
1c0: 0023082d daddu at,at,v1
|
||||
1c4: ac220000 sw v0,0\(at\)
|
||||
1c8: 3c018000 lui at,0x8000
|
||||
1cc: 0023082d daddu at,at,v1
|
||||
1d0: ac22ffff sw v0,-1\(at\)
|
||||
1d4: 3401abce li at,0xabce
|
||||
1d8: 00010c38 dsll at,at,0x10
|
||||
1dc: 0023082d daddu at,at,v1
|
||||
1e0: ac22ef01 sw v0,-4351\(at\)
|
||||
1e4: 3c010123 lui at,0x123
|
||||
1e8: 0023082d daddu at,at,v1
|
||||
1ec: ac224567 sw v0,17767\(at\)
|
||||
1f0: 3c020123 lui v0,0x123
|
||||
1f4: 34424567 ori v0,v0,0x4567
|
||||
1f8: 00021438 dsll v0,v0,0x10
|
||||
1fc: 344289ab ori v0,v0,0x89ab
|
||||
200: 00021438 dsll v0,v0,0x10
|
||||
204: 3442cdef ori v0,v0,0xcdef
|
||||
208: 3c02abcd lui v0,0xabcd
|
||||
20c: 3442ef01 ori v0,v0,0xef01
|
||||
210: 00021438 dsll v0,v0,0x10
|
||||
214: 34422345 ori v0,v0,0x2345
|
||||
218: 00021438 dsll v0,v0,0x10
|
||||
21c: 34426789 ori v0,v0,0x6789
|
||||
220: 3c028000 lui v0,0x8000
|
||||
224: 2402ffff li v0,-1
|
||||
228: 0002103c dsll32 v0,v0,0x0
|
||||
22c: 3402abcd li v0,0xabcd
|
||||
230: 00021438 dsll v0,v0,0x10
|
||||
234: 3442ef01 ori v0,v0,0xef01
|
||||
238: 3c027fff lui v0,0x7fff
|
||||
23c: 3442ffff ori v0,v0,0xffff
|
||||
240: 3c020123 lui v0,0x123
|
||||
244: 34424567 ori v0,v0,0x4567
|
||||
\.\.\.
|
||||
|
1017
gas/testsuite/gas/mips/ldstla-n64-sym32.d
Normal file
1017
gas/testsuite/gas/mips/ldstla-n64-sym32.d
Normal file
File diff suppressed because it is too large
Load Diff
@ -9,173 +9,149 @@ Disassembly of section \.text:
|
||||
|
||||
0000000000000000 <\.text>:
|
||||
0: 3c020123 lui v0,0x123
|
||||
4: 3c0189ac lui at,0x89ac
|
||||
8: 64424568 daddiu v0,v0,17768
|
||||
c: 0023082d daddu at,at,v1
|
||||
10: 0002103c dsll32 v0,v0,0x0
|
||||
14: 0041102d daddu v0,v0,at
|
||||
4: 34424567 ori v0,v0,0x4567
|
||||
8: 00021438 dsll v0,v0,0x10
|
||||
c: 344289ac ori v0,v0,0x89ac
|
||||
10: 00021438 dsll v0,v0,0x10
|
||||
14: 0043102d daddu v0,v0,v1
|
||||
18: dc42cdef ld v0,-12817\(v0\)
|
||||
1c: 3c02abce lui v0,0xabce
|
||||
20: 3c012345 lui at,0x2345
|
||||
24: 6442ef01 daddiu v0,v0,-4351
|
||||
28: 0023082d daddu at,at,v1
|
||||
2c: 0002103c dsll32 v0,v0,0x0
|
||||
30: 0041102d daddu v0,v0,at
|
||||
1c: 3c02abcd lui v0,0xabcd
|
||||
20: 3442ef01 ori v0,v0,0xef01
|
||||
24: 00021438 dsll v0,v0,0x10
|
||||
28: 34422345 ori v0,v0,0x2345
|
||||
2c: 00021438 dsll v0,v0,0x10
|
||||
30: 0043102d daddu v0,v0,v1
|
||||
34: dc426789 ld v0,26505\(v0\)
|
||||
38: 3c028000 lui v0,0x8000
|
||||
3c: 0043102d daddu v0,v0,v1
|
||||
40: dc420000 ld v0,0\(v0\)
|
||||
44: 3c020000 lui v0,0x0
|
||||
48: 3c010000 lui at,0x0
|
||||
4c: 6442ffff daddiu v0,v0,-1
|
||||
50: 0023082d daddu at,at,v1
|
||||
54: 0002103c dsll32 v0,v0,0x0
|
||||
58: 0041102d daddu v0,v0,at
|
||||
5c: dc420000 ld v0,0\(v0\)
|
||||
60: 3c028000 lui v0,0x8000
|
||||
64: 0043102d daddu v0,v0,v1
|
||||
68: dc42ffff ld v0,-1\(v0\)
|
||||
6c: 3c020000 lui v0,0x0
|
||||
70: 3c01abce lui at,0xabce
|
||||
74: 64420001 daddiu v0,v0,1
|
||||
78: 0023082d daddu at,at,v1
|
||||
7c: 0002103c dsll32 v0,v0,0x0
|
||||
80: 0041102d daddu v0,v0,at
|
||||
84: dc42ef01 ld v0,-4351\(v0\)
|
||||
88: 3c020123 lui v0,0x123
|
||||
8c: 0043102d daddu v0,v0,v1
|
||||
90: dc424567 ld v0,17767\(v0\)
|
||||
94: 3c010123 lui at,0x123
|
||||
98: 64214568 daddiu at,at,17768
|
||||
9c: 00010c38 dsll at,at,0x10
|
||||
a0: 642189ac daddiu at,at,-30292
|
||||
a4: 00010c38 dsll at,at,0x10
|
||||
a8: 0023082d daddu at,at,v1
|
||||
ac: fc22cdef sd v0,-12817\(at\)
|
||||
b0: 3c01abce lui at,0xabce
|
||||
b4: 6421ef01 daddiu at,at,-4351
|
||||
b8: 00010c38 dsll at,at,0x10
|
||||
bc: 64212345 daddiu at,at,9029
|
||||
c0: 00010c38 dsll at,at,0x10
|
||||
c4: 0023082d daddu at,at,v1
|
||||
c8: fc226789 sd v0,26505\(at\)
|
||||
cc: 3c018000 lui at,0x8000
|
||||
d0: 0023082d daddu at,at,v1
|
||||
d4: fc220000 sd v0,0\(at\)
|
||||
d8: 3c010000 lui at,0x0
|
||||
dc: 6421ffff daddiu at,at,-1
|
||||
44: 2402ffff li v0,-1
|
||||
48: 0002103c dsll32 v0,v0,0x0
|
||||
4c: 0043102d daddu v0,v0,v1
|
||||
50: dc420000 ld v0,0\(v0\)
|
||||
54: 3c028000 lui v0,0x8000
|
||||
58: 0043102d daddu v0,v0,v1
|
||||
5c: dc42ffff ld v0,-1\(v0\)
|
||||
60: 3402abce li v0,0xabce
|
||||
64: 00021438 dsll v0,v0,0x10
|
||||
68: 0043102d daddu v0,v0,v1
|
||||
6c: dc42ef01 ld v0,-4351\(v0\)
|
||||
70: 3c020123 lui v0,0x123
|
||||
74: 0043102d daddu v0,v0,v1
|
||||
78: dc424567 ld v0,17767\(v0\)
|
||||
7c: 3c010123 lui at,0x123
|
||||
80: 34214567 ori at,at,0x4567
|
||||
84: 00010c38 dsll at,at,0x10
|
||||
88: 342189ac ori at,at,0x89ac
|
||||
8c: 00010c38 dsll at,at,0x10
|
||||
90: 0023082d daddu at,at,v1
|
||||
94: fc22cdef sd v0,-12817\(at\)
|
||||
98: 3c01abcd lui at,0xabcd
|
||||
9c: 3421ef01 ori at,at,0xef01
|
||||
a0: 00010c38 dsll at,at,0x10
|
||||
a4: 34212345 ori at,at,0x2345
|
||||
a8: 00010c38 dsll at,at,0x10
|
||||
ac: 0023082d daddu at,at,v1
|
||||
b0: fc226789 sd v0,26505\(at\)
|
||||
b4: 3c018000 lui at,0x8000
|
||||
b8: 0023082d daddu at,at,v1
|
||||
bc: fc220000 sd v0,0\(at\)
|
||||
c0: 2401ffff li at,-1
|
||||
c4: 0001083c dsll32 at,at,0x0
|
||||
c8: 0023082d daddu at,at,v1
|
||||
cc: fc220000 sd v0,0\(at\)
|
||||
d0: 3c018000 lui at,0x8000
|
||||
d4: 0023082d daddu at,at,v1
|
||||
d8: fc22ffff sd v0,-1\(at\)
|
||||
dc: 3401abce li at,0xabce
|
||||
e0: 00010c38 dsll at,at,0x10
|
||||
e4: 64210000 daddiu at,at,0
|
||||
e8: 00010c38 dsll at,at,0x10
|
||||
ec: 0023082d daddu at,at,v1
|
||||
f0: fc220000 sd v0,0\(at\)
|
||||
f4: 3c018000 lui at,0x8000
|
||||
f8: 0023082d daddu at,at,v1
|
||||
fc: fc22ffff sd v0,-1\(at\)
|
||||
100: 3c010000 lui at,0x0
|
||||
104: 64210001 daddiu at,at,1
|
||||
108: 00010c38 dsll at,at,0x10
|
||||
10c: 6421abce daddiu at,at,-21554
|
||||
110: 00010c38 dsll at,at,0x10
|
||||
114: 0023082d daddu at,at,v1
|
||||
118: fc22ef01 sd v0,-4351\(at\)
|
||||
11c: 3c010123 lui at,0x123
|
||||
120: 0023082d daddu at,at,v1
|
||||
124: fc224567 sd v0,17767\(at\)
|
||||
128: 3c020123 lui v0,0x123
|
||||
12c: 3c0189ac lui at,0x89ac
|
||||
130: 64424568 daddiu v0,v0,17768
|
||||
134: 0023082d daddu at,at,v1
|
||||
138: 0002103c dsll32 v0,v0,0x0
|
||||
13c: 0041102d daddu v0,v0,at
|
||||
140: 8c42cdef lw v0,-12817\(v0\)
|
||||
144: 3c02abce lui v0,0xabce
|
||||
148: 3c012345 lui at,0x2345
|
||||
14c: 6442ef01 daddiu v0,v0,-4351
|
||||
150: 0023082d daddu at,at,v1
|
||||
154: 0002103c dsll32 v0,v0,0x0
|
||||
158: 0041102d daddu v0,v0,at
|
||||
15c: 8c426789 lw v0,26505\(v0\)
|
||||
160: 3c028000 lui v0,0x8000
|
||||
164: 0043102d daddu v0,v0,v1
|
||||
168: 8c420000 lw v0,0\(v0\)
|
||||
16c: 3c020000 lui v0,0x0
|
||||
170: 3c010000 lui at,0x0
|
||||
174: 6442ffff daddiu v0,v0,-1
|
||||
178: 0023082d daddu at,at,v1
|
||||
17c: 0002103c dsll32 v0,v0,0x0
|
||||
180: 0041102d daddu v0,v0,at
|
||||
184: 8c420000 lw v0,0\(v0\)
|
||||
188: 3c028000 lui v0,0x8000
|
||||
18c: 0043102d daddu v0,v0,v1
|
||||
190: 8c42ffff lw v0,-1\(v0\)
|
||||
194: 3c020000 lui v0,0x0
|
||||
198: 3c01abce lui at,0xabce
|
||||
19c: 64420001 daddiu v0,v0,1
|
||||
1a0: 0023082d daddu at,at,v1
|
||||
1a4: 0002103c dsll32 v0,v0,0x0
|
||||
1a8: 0041102d daddu v0,v0,at
|
||||
1ac: 8c42ef01 lw v0,-4351\(v0\)
|
||||
1b0: 3c020123 lui v0,0x123
|
||||
1b4: 0043102d daddu v0,v0,v1
|
||||
1b8: 8c424567 lw v0,17767\(v0\)
|
||||
1bc: 3c010123 lui at,0x123
|
||||
1c0: 64214568 daddiu at,at,17768
|
||||
1c4: 00010c38 dsll at,at,0x10
|
||||
1c8: 642189ac daddiu at,at,-30292
|
||||
1cc: 00010c38 dsll at,at,0x10
|
||||
1d0: 0023082d daddu at,at,v1
|
||||
1d4: ac22cdef sw v0,-12817\(at\)
|
||||
1d8: 3c01abce lui at,0xabce
|
||||
1dc: 6421ef01 daddiu at,at,-4351
|
||||
1e0: 00010c38 dsll at,at,0x10
|
||||
1e4: 64212345 daddiu at,at,9029
|
||||
1e8: 00010c38 dsll at,at,0x10
|
||||
1ec: 0023082d daddu at,at,v1
|
||||
1f0: ac226789 sw v0,26505\(at\)
|
||||
1f4: 3c018000 lui at,0x8000
|
||||
1f8: 0023082d daddu at,at,v1
|
||||
1fc: ac220000 sw v0,0\(at\)
|
||||
200: 3c010000 lui at,0x0
|
||||
204: 6421ffff daddiu at,at,-1
|
||||
208: 00010c38 dsll at,at,0x10
|
||||
20c: 64210000 daddiu at,at,0
|
||||
210: 00010c38 dsll at,at,0x10
|
||||
214: 0023082d daddu at,at,v1
|
||||
218: ac220000 sw v0,0\(at\)
|
||||
21c: 3c018000 lui at,0x8000
|
||||
220: 0023082d daddu at,at,v1
|
||||
224: ac22ffff sw v0,-1\(at\)
|
||||
228: 3c010000 lui at,0x0
|
||||
22c: 64210001 daddiu at,at,1
|
||||
230: 00010c38 dsll at,at,0x10
|
||||
234: 6421abce daddiu at,at,-21554
|
||||
238: 00010c38 dsll at,at,0x10
|
||||
23c: 0023082d daddu at,at,v1
|
||||
240: ac22ef01 sw v0,-4351\(at\)
|
||||
244: 3c010123 lui at,0x123
|
||||
248: 0023082d daddu at,at,v1
|
||||
24c: ac224567 sw v0,17767\(at\)
|
||||
250: 3c020123 lui v0,0x123
|
||||
254: 34424567 ori v0,v0,0x4567
|
||||
258: 00021438 dsll v0,v0,0x10
|
||||
25c: 344289ab ori v0,v0,0x89ab
|
||||
260: 00021438 dsll v0,v0,0x10
|
||||
264: 3442cdef ori v0,v0,0xcdef
|
||||
268: 3c02abcd lui v0,0xabcd
|
||||
26c: 3442ef01 ori v0,v0,0xef01
|
||||
270: 00021438 dsll v0,v0,0x10
|
||||
274: 34422345 ori v0,v0,0x2345
|
||||
278: 00021438 dsll v0,v0,0x10
|
||||
27c: 34426789 ori v0,v0,0x6789
|
||||
280: 3c028000 lui v0,0x8000
|
||||
284: 2402ffff li v0,-1
|
||||
288: 0002103c dsll32 v0,v0,0x0
|
||||
28c: 3402abcd li v0,0xabcd
|
||||
290: 00021438 dsll v0,v0,0x10
|
||||
294: 3442ef01 ori v0,v0,0xef01
|
||||
298: 3c027fff lui v0,0x7fff
|
||||
29c: 3442ffff ori v0,v0,0xffff
|
||||
2a0: 3c020123 lui v0,0x123
|
||||
2a4: 34424567 ori v0,v0,0x4567
|
||||
e4: 0023082d daddu at,at,v1
|
||||
e8: fc22ef01 sd v0,-4351\(at\)
|
||||
ec: 3c010123 lui at,0x123
|
||||
f0: 0023082d daddu at,at,v1
|
||||
f4: fc224567 sd v0,17767\(at\)
|
||||
f8: 3c020123 lui v0,0x123
|
||||
fc: 34424567 ori v0,v0,0x4567
|
||||
100: 00021438 dsll v0,v0,0x10
|
||||
104: 344289ac ori v0,v0,0x89ac
|
||||
108: 00021438 dsll v0,v0,0x10
|
||||
10c: 0043102d daddu v0,v0,v1
|
||||
110: 8c42cdef lw v0,-12817\(v0\)
|
||||
114: 3c02abcd lui v0,0xabcd
|
||||
118: 3442ef01 ori v0,v0,0xef01
|
||||
11c: 00021438 dsll v0,v0,0x10
|
||||
120: 34422345 ori v0,v0,0x2345
|
||||
124: 00021438 dsll v0,v0,0x10
|
||||
128: 0043102d daddu v0,v0,v1
|
||||
12c: 8c426789 lw v0,26505\(v0\)
|
||||
130: 3c028000 lui v0,0x8000
|
||||
134: 0043102d daddu v0,v0,v1
|
||||
138: 8c420000 lw v0,0\(v0\)
|
||||
13c: 2402ffff li v0,-1
|
||||
140: 0002103c dsll32 v0,v0,0x0
|
||||
144: 0043102d daddu v0,v0,v1
|
||||
148: 8c420000 lw v0,0\(v0\)
|
||||
14c: 3c028000 lui v0,0x8000
|
||||
150: 0043102d daddu v0,v0,v1
|
||||
154: 8c42ffff lw v0,-1\(v0\)
|
||||
158: 3402abce li v0,0xabce
|
||||
15c: 00021438 dsll v0,v0,0x10
|
||||
160: 0043102d daddu v0,v0,v1
|
||||
164: 8c42ef01 lw v0,-4351\(v0\)
|
||||
168: 3c020123 lui v0,0x123
|
||||
16c: 0043102d daddu v0,v0,v1
|
||||
170: 8c424567 lw v0,17767\(v0\)
|
||||
174: 3c010123 lui at,0x123
|
||||
178: 34214567 ori at,at,0x4567
|
||||
17c: 00010c38 dsll at,at,0x10
|
||||
180: 342189ac ori at,at,0x89ac
|
||||
184: 00010c38 dsll at,at,0x10
|
||||
188: 0023082d daddu at,at,v1
|
||||
18c: ac22cdef sw v0,-12817\(at\)
|
||||
190: 3c01abcd lui at,0xabcd
|
||||
194: 3421ef01 ori at,at,0xef01
|
||||
198: 00010c38 dsll at,at,0x10
|
||||
19c: 34212345 ori at,at,0x2345
|
||||
1a0: 00010c38 dsll at,at,0x10
|
||||
1a4: 0023082d daddu at,at,v1
|
||||
1a8: ac226789 sw v0,26505\(at\)
|
||||
1ac: 3c018000 lui at,0x8000
|
||||
1b0: 0023082d daddu at,at,v1
|
||||
1b4: ac220000 sw v0,0\(at\)
|
||||
1b8: 2401ffff li at,-1
|
||||
1bc: 0001083c dsll32 at,at,0x0
|
||||
1c0: 0023082d daddu at,at,v1
|
||||
1c4: ac220000 sw v0,0\(at\)
|
||||
1c8: 3c018000 lui at,0x8000
|
||||
1cc: 0023082d daddu at,at,v1
|
||||
1d0: ac22ffff sw v0,-1\(at\)
|
||||
1d4: 3401abce li at,0xabce
|
||||
1d8: 00010c38 dsll at,at,0x10
|
||||
1dc: 0023082d daddu at,at,v1
|
||||
1e0: ac22ef01 sw v0,-4351\(at\)
|
||||
1e4: 3c010123 lui at,0x123
|
||||
1e8: 0023082d daddu at,at,v1
|
||||
1ec: ac224567 sw v0,17767\(at\)
|
||||
1f0: 3c020123 lui v0,0x123
|
||||
1f4: 34424567 ori v0,v0,0x4567
|
||||
1f8: 00021438 dsll v0,v0,0x10
|
||||
1fc: 344289ab ori v0,v0,0x89ab
|
||||
200: 00021438 dsll v0,v0,0x10
|
||||
204: 3442cdef ori v0,v0,0xcdef
|
||||
208: 3c02abcd lui v0,0xabcd
|
||||
20c: 3442ef01 ori v0,v0,0xef01
|
||||
210: 00021438 dsll v0,v0,0x10
|
||||
214: 34422345 ori v0,v0,0x2345
|
||||
218: 00021438 dsll v0,v0,0x10
|
||||
21c: 34426789 ori v0,v0,0x6789
|
||||
220: 3c028000 lui v0,0x8000
|
||||
224: 2402ffff li v0,-1
|
||||
228: 0002103c dsll32 v0,v0,0x0
|
||||
22c: 3402abcd li v0,0xabcd
|
||||
230: 00021438 dsll v0,v0,0x10
|
||||
234: 3442ef01 ori v0,v0,0xef01
|
||||
238: 3c027fff lui v0,0x7fff
|
||||
23c: 3442ffff ori v0,v0,0xffff
|
||||
240: 3c020123 lui v0,0x123
|
||||
244: 34424567 ori v0,v0,0x4567
|
||||
\.\.\.
|
||||
|
176
gas/testsuite/gas/mips/ldstla-sym32.s
Normal file
176
gas/testsuite/gas/mips/ldstla-sym32.s
Normal file
@ -0,0 +1,176 @@
|
||||
dla $4,0xa800000000000000
|
||||
dla $4,0xa800000000000000($3)
|
||||
dla $4,0xffffffff80000000
|
||||
dla $4,0xffffffff80000000($3)
|
||||
dla $4,0x000000007fff7ff8
|
||||
dla $4,0x000000007fff7ff8($3)
|
||||
dla $4,0x000000007ffffff8
|
||||
dla $4,0x000000007ffffff8($3)
|
||||
dla $4,0x123456789abcdef0
|
||||
dla $4,0x123456789abcdef0($3)
|
||||
|
||||
dla $4,small_comm
|
||||
dla $4,small_comm($3)
|
||||
dla $4,small_comm+3
|
||||
dla $4,small_comm+3($3)
|
||||
|
||||
dla $4,big_comm
|
||||
dla $4,big_comm($3)
|
||||
dla $4,big_comm+3
|
||||
dla $4,big_comm+3($3)
|
||||
|
||||
dla $4,small_data
|
||||
dla $4,small_data($3)
|
||||
dla $4,small_data+3
|
||||
dla $4,small_data+3($3)
|
||||
|
||||
dla $4,big_data
|
||||
dla $4,big_data($3)
|
||||
dla $4,big_data+3
|
||||
dla $4,big_data+3($3)
|
||||
|
||||
dla $4,extern
|
||||
dla $4,extern($3)
|
||||
dla $4,extern + 0x34000
|
||||
dla $4,extern + 0x34000($3)
|
||||
dla $4,extern - 0x34000
|
||||
dla $4,extern - 0x34000($3)
|
||||
|
||||
lw $4,0xa800000000000000
|
||||
lw $4,0xa800000000000000($3)
|
||||
lw $4,0xffffffff80000000
|
||||
lw $4,0xffffffff80000000($3)
|
||||
lw $4,0x000000007fff7ff8
|
||||
lw $4,0x000000007fff7ff8($3)
|
||||
lw $4,0x000000007ffffff8
|
||||
lw $4,0x000000007ffffff8($3)
|
||||
lw $4,0x123456789abcdef0
|
||||
lw $4,0x123456789abcdef0($3)
|
||||
|
||||
lw $4,small_comm
|
||||
lw $4,small_comm($3)
|
||||
lw $4,small_comm+3
|
||||
lw $4,small_comm+3($3)
|
||||
|
||||
lw $4,big_comm
|
||||
lw $4,big_comm($3)
|
||||
lw $4,big_comm+3
|
||||
lw $4,big_comm+3($3)
|
||||
|
||||
lw $4,small_data
|
||||
lw $4,small_data($3)
|
||||
lw $4,small_data+3
|
||||
lw $4,small_data+3($3)
|
||||
|
||||
lw $4,big_data
|
||||
lw $4,big_data($3)
|
||||
lw $4,big_data+3
|
||||
lw $4,big_data+3($3)
|
||||
|
||||
lw $4,extern
|
||||
lw $4,extern($3)
|
||||
lw $4,extern + 0x34000
|
||||
lw $4,extern + 0x34000($3)
|
||||
lw $4,extern - 0x34000
|
||||
lw $4,extern - 0x34000($3)
|
||||
|
||||
sw $4,0xa800000000000000
|
||||
sw $4,0xa800000000000000($3)
|
||||
sw $4,0xffffffff80000000
|
||||
sw $4,0xffffffff80000000($3)
|
||||
sw $4,0x000000007fff7ff8
|
||||
sw $4,0x000000007fff7ff8($3)
|
||||
sw $4,0x000000007ffffff8
|
||||
sw $4,0x000000007ffffff8($3)
|
||||
sw $4,0x123456789abcdef0
|
||||
sw $4,0x123456789abcdef0($3)
|
||||
|
||||
sw $4,small_comm
|
||||
sw $4,small_comm($3)
|
||||
sw $4,small_comm+3
|
||||
sw $4,small_comm+3($3)
|
||||
|
||||
sw $4,big_comm
|
||||
sw $4,big_comm($3)
|
||||
sw $4,big_comm+3
|
||||
sw $4,big_comm+3($3)
|
||||
|
||||
sw $4,small_data
|
||||
sw $4,small_data($3)
|
||||
sw $4,small_data+3
|
||||
sw $4,small_data+3($3)
|
||||
|
||||
sw $4,big_data
|
||||
sw $4,big_data($3)
|
||||
sw $4,big_data+3
|
||||
sw $4,big_data+3($3)
|
||||
|
||||
sw $4,extern
|
||||
sw $4,extern($3)
|
||||
sw $4,extern + 0x34000
|
||||
sw $4,extern + 0x34000($3)
|
||||
sw $4,extern - 0x34000
|
||||
sw $4,extern - 0x34000($3)
|
||||
|
||||
usw $4,0xa800000000000000
|
||||
usw $4,0xa800000000000000($3)
|
||||
usw $4,0xffffffff80000000
|
||||
usw $4,0xffffffff80000000($3)
|
||||
usw $4,0x000000007fff7ff8
|
||||
usw $4,0x000000007fff7ff8($3)
|
||||
usw $4,0x000000007ffffff8
|
||||
usw $4,0x000000007ffffff8($3)
|
||||
usw $4,0x123456789abcdef0
|
||||
usw $4,0x123456789abcdef0($3)
|
||||
|
||||
usw $4,small_comm
|
||||
usw $4,small_comm($3)
|
||||
usw $4,small_comm+3
|
||||
usw $4,small_comm+3($3)
|
||||
|
||||
usw $4,big_comm
|
||||
usw $4,big_comm($3)
|
||||
usw $4,big_comm+3
|
||||
usw $4,big_comm+3($3)
|
||||
|
||||
usw $4,small_data
|
||||
usw $4,small_data($3)
|
||||
usw $4,small_data+3
|
||||
usw $4,small_data+3($3)
|
||||
|
||||
usw $4,big_data
|
||||
usw $4,big_data($3)
|
||||
usw $4,big_data+3
|
||||
usw $4,big_data+3($3)
|
||||
|
||||
usw $4,extern
|
||||
usw $4,extern($3)
|
||||
usw $4,extern + 0x34000
|
||||
usw $4,extern + 0x34000($3)
|
||||
usw $4,extern - 0x34000
|
||||
usw $4,extern - 0x34000($3)
|
||||
|
||||
.set nosym32
|
||||
dla $4,extern
|
||||
lw $4,extern
|
||||
sw $4,extern
|
||||
usw $4,extern
|
||||
|
||||
.set sym32
|
||||
dla $4,extern
|
||||
lw $4,extern
|
||||
sw $4,extern
|
||||
usw $4,extern
|
||||
|
||||
.section .sdata
|
||||
.globl small_data
|
||||
small_data:
|
||||
.fill 16
|
||||
|
||||
.data
|
||||
.globl big_data
|
||||
big_data:
|
||||
.fill 16
|
||||
|
||||
.comm small_comm,8
|
||||
.comm big_comm,16
|
@ -726,11 +726,11 @@ if { [istarget mips*-*-*] } then {
|
||||
|
||||
run_dump_test "ldstla-32"
|
||||
run_dump_test "ldstla-32-shared"
|
||||
run_dump_test "ldstla-eabi64"
|
||||
if $has_newabi {
|
||||
run_dump_test "ldstla-n32"
|
||||
run_dump_test "ldstla-n32-shared"
|
||||
run_dump_test "ldstla-n64"
|
||||
run_dump_test "ldstla-n64-shared"
|
||||
run_dump_test "ldstla-n64-sym32"
|
||||
}
|
||||
|
||||
run_dump_test "macro-warn-1"
|
||||
|
Loading…
Reference in New Issue
Block a user