gas/:
authorMaciej W. Rozycki <macro@linux-mips.org>
Wed, 13 Apr 2005 18:17:10 +0000 (18:17 +0000)
committerMaciej W. Rozycki <macro@linux-mips.org>
Wed, 13 Apr 2005 18:17:10 +0000 (18:17 +0000)
commit2051e8c45faf97a1f6edb065c23a6a5e8fb8c484
tree131f277bc01126fddb04b29d97feeee206ad4eb8
parenta63027e547181bee6b09e1c4441df4934e38edcd
gas/:
* config/tc-mips.c (IS_ZEXT_32BIT_NUM): New macro.
(normalize_address_expr): New function to sign-extend address
offsets that fit into 32 bits in 32-bit mode.
(macro_build_ldst_constoffset): Use normalize_address_expr()
instead of a handcoded sequence.
(load_register): Likewise.  Report oversized numbers in a useful
way.
(macro) [ld_st, ldd_std]: Reject all oversized offsets, not only
for constant addresses.  Report oversized numbers in a useful way.
(mips_ip): Use normalize_address_expr() for addresses.

gas/testsuite/:
* gas/mips/ldstla-32.s: Exclude offsets that are now meant to fail
and include more instructions/offsets that are meant to succeed.
Use $4 instead $3 to avoid register dependencies.
* gas/mips/ldstla-32.d: Update accordingly.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: New test based on the above, except
for mips3.
* gas/mips/ldstla-32-mips3-shared.d: Similarly, for PIC.
* gas/mips/ldstla-32-mips3.s: Source for the new tests.
* gas/mips/ldstla-32-1.s: New test for offsets that are meant to
fail.
* gas/mips/ldstla-32-mips3-1.s: Likewise, for mips3.
* gas/mips/ldstla-32-1.l: Stderr output for the new test.
* gas/mips/ldstla-32-mips3-1.l: Likewise.
* gas/mips/mips.exp: Run the new tests.
14 files changed:
gas/ChangeLog
gas/config/tc-mips.c
gas/testsuite/ChangeLog
gas/testsuite/gas/mips/ldstla-32-1.l [new file with mode: 0644]
gas/testsuite/gas/mips/ldstla-32-1.s [new file with mode: 0644]
gas/testsuite/gas/mips/ldstla-32-mips3-1.l [new file with mode: 0644]
gas/testsuite/gas/mips/ldstla-32-mips3-1.s [new file with mode: 0644]
gas/testsuite/gas/mips/ldstla-32-mips3-shared.d [new file with mode: 0644]
gas/testsuite/gas/mips/ldstla-32-mips3.d [new file with mode: 0644]
gas/testsuite/gas/mips/ldstla-32-mips3.s [new file with mode: 0644]
gas/testsuite/gas/mips/ldstla-32-shared.d
gas/testsuite/gas/mips/ldstla-32.d
gas/testsuite/gas/mips/ldstla-32.s
gas/testsuite/gas/mips/mips.exp