This adjusts equate handling by
authorNick Clifton <nickc@redhat.com>
Tue, 11 Oct 2005 11:16:17 +0000 (11:16 +0000)
committerNick Clifton <nickc@redhat.com>
Tue, 11 Oct 2005 11:16:17 +0000 (11:16 +0000)
commit9497f5ac6bc10bdd65ea471787619bde1edca77d
tree7f36b3cb6f0d84b058dfba51242bd900edde9503
parent1334d4d50c52bc295dace4982442369838f478b3
This adjusts equate handling by
- allowing true forward references (which will always assume the referenced
  symbols have at the point of use) through the new .eqv pseudo-op and the
  new == operator
- disallowing changing .equiv-generated equates (so that the protection this
  provides is both forward and backward)
- snapshotting equates when their value gets changed so that previous uses
  don't get affected by the new value.
- allowing expressions in places where absolute expressions (or register
  names) are needed which were not completely resolvable at the point of
  their definition but which are fully resolvable at the point of use

In addition it fixes PR/288.
43 files changed:
gas/ChangeLog
gas/as.c
gas/cond.c
gas/config/tc-arc.c
gas/config/tc-ia64.h
gas/config/tc-m32r.c
gas/config/tc-m32r.h
gas/config/tc-mips.c
gas/config/tc-mmix.h
gas/config/tc-mn10300.c
gas/config/tc-mn10300.h
gas/config/tc-ppc.h
gas/config/tc-sh.c
gas/config/tc-sh.h
gas/config/tc-sh64.c
gas/config/tc-sh64.h
gas/config/tc-tic54x.h
gas/doc/as.texinfo
gas/dw2gencfi.c
gas/expr.c
gas/expr.h
gas/read.c
gas/struc-symbol.h
gas/symbols.c
gas/symbols.h
gas/testsuite/ChangeLog
gas/testsuite/gas/all/assign-bad.s [new file with mode: 0644]
gas/testsuite/gas/all/assign-ok.s [new file with mode: 0644]
gas/testsuite/gas/all/cond.l [moved from gas/testsuite/gas/all/cond.d with 83% similarity]
gas/testsuite/gas/all/cond.s
gas/testsuite/gas/all/equ-bad.s [new file with mode: 0644]
gas/testsuite/gas/all/equ-ok.s [new file with mode: 0644]
gas/testsuite/gas/all/equiv1.s [new file with mode: 0644]
gas/testsuite/gas/all/equiv2.s [new file with mode: 0644]
gas/testsuite/gas/all/eqv-bad.s [new file with mode: 0644]
gas/testsuite/gas/all/eqv-ok.s [new file with mode: 0644]
gas/testsuite/gas/all/eval.d [new file with mode: 0644]
gas/testsuite/gas/all/eval.s [new file with mode: 0644]
gas/testsuite/gas/all/forward.d [new file with mode: 0644]
gas/testsuite/gas/all/forward.s [new file with mode: 0644]
gas/testsuite/gas/all/gas.exp
gas/testsuite/gas/all/redef.d [new file with mode: 0644]
gas/testsuite/gas/all/redef.s [new file with mode: 0644]