This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: .unreq patch
- From: Nick Clifton <nickc at redhat dot com>
- To: Pete Gonzalez <pgonzalez at bluel dot com>
- Cc: binutils at sources dot redhat dot com
- Date: Thu, 06 Nov 2003 15:24:36 +0000
- Subject: Re: .unreq patch
- References: <6.0.0.22.2.20031102191859.01c8ebb0@mail.jeffsys.net>
Hi Pete,
> I was wondering if this patch was ever incorporated into the
> binutils distribution:
> http://sources.redhat.com/ml/binutils/2003-07/msg00622.html
>
> The copyright assignment was executed on 28 August.
I never received notification of the copyright execution, so no, it
had not been checked in.
I have gone over the patch and applied it to the sources. I did have
to make several changes however, which I am going to document here:
* The .unreq pseudo op can be used to remove builtin register
aliases. These come from a const data structure however and so
the memory associated with them must not be freed.
* The patch to c-arm.texi implied that .unreq took the name of the
register that was aliases as its argument (eg 'r0') instead of the
name of the alias (eg "foo").
* There was no testcase added to the gas testsuite to make sure that
the new feature was working.
* You did not supply a ChangeLog entry for your patch.
I have fixed all of these things and checked in the patch with these
ChangeLog entries:
Cheers
Nick
gas/ChangeLog
2003-11-06 Pete Gonzalez <pgonzalez@bluel.com>
* config/tc-arm.texi (struct reg_entry): Add new field 'builtin'.
(rn_table, iwmmxt_table, cp_table, cn_table, fn_table, sn_table,
dn_table, mav_mvf_table, mac_mvd_table, mav_mvfx_table,
mav_mvax_table, mav_dspc_table): Initialise new field.
(insert_reg_alias): Initialise new field.
(md_pseudo_table): Add "unreq" entry.
(s_unreq): New function: Undo the effects of a previous .req.
* doc/c-arm.texi: Document new pseudo op.
* NEWS: Mention new feature.
gas/testsuite/ChangeLog
2003-11-06 Nick Clifton <nickc@redhat.com>
* gas/arm/req.s: New test file. Check .req and .unreq pseudo ops.
* gas/arm/req.l: Expected error output from req.s test.
* gas/arm/copro.d: Set target architecture for objdump so that the
test will work on architectures which cannot encode higher arm
architecture types in their file headers.
* gas/arm/arm.exp: Run new req.s test.
Skip thumb instruction test for PE targets which do not support
thumb relocations.
* gas/elf/elf.exp: Skip special handling of section2 test for
XScale targets - it is no longer needed.