[v3] x86: Remove libopcodes dependency
Checks
Commit Message
On Thu, Dec 01, 2022 at 08:41:28AM +0100, Jan Beulich wrote:
> On 30.11.2022 23:22, H.J. Lu wrote:
> > On Tue, Nov 29, 2022 at 10:58 PM Jan Beulich <jbeulich@suse.com> wrote:
> >> On 30.11.2022 01:06, H.J. Lu wrote:
> >>> On Tue, Nov 29, 2022 at 11:38 AM H.J. Lu <hjl.tools@gmail.com> wrote:
> >>>> On Tue, Nov 29, 2022 at 1:22 AM Jan Beulich <jbeulich@suse.com> wrote:
> >>>>> On 29.11.2022 00:49, H.J. Lu wrote:
> >>>>>> On Thu, Nov 24, 2022 at 2:19 AM Jan Beulich <jbeulich@suse.com> wrote:
> >>>>>>> On 22.11.2022 19:19, H.J. Lu wrote:
> >>>>>>>> --- a/gas/Makefile.am
> >>>>>>>> +++ b/gas/Makefile.am
> >>>>>>>> @@ -446,6 +446,12 @@ development.exp: $(BFDDIR)/development.sh
> >>>>>>>> $(EGREP) "(development|experimental)=" $(BFDDIR)/development.sh \
> >>>>>>>> | $(AWK) -F= '{ print "set " $$1 " " $$2 }' > $@
> >>>>>>>>
> >>>>>>>> +$(srcdir)/../opcodes/i386-init.h $(srcdir)/../opcodes/i386-tbl.h: \
> >>>>>>>> + @MAINT@ $(srcdir)/../opcodes/i386-opc.tbl \
> >>>>>>>> + $(srcdir)/../opcodes/i386-reg.tbl \
> >>>>>>>> + $(srcdir)/../opcodes/i386-opc.h
> >>>>>>>> + cd ../opcodes; make gen-i386-tbl
> >>>>>>>
> >>>>>>> I've made a patch to gas/Makefile.am as you have requested in reply to
> >>>>>>> my series. I will want to put that through some more testing, so I will
> >>>>>>> submit a v3 of that only a little later (and of course only unless you
> >>>>>>> submit a v2 of your patch earlier that I would also end up being okay
> >>>>>>> with). In the course of doing so I noticed a few more issues with your
> >>>>>>> change:
> >>>>>>>
> >>>>>>> For one I don't think you can put @MAINT@ on a continued line, as the
> >>>>>>> line continuation might then be hidden when @MAINT@ expands to #. The
> >>>>>>> list of dependencies wants expressing via a variable, which would then
> >>>>>>> be used immediately after @MAINT@ without any line continuation
> >>>>>>> following.
> >>>>>>
> >>>>>> Fixed.
> >>>>>
> >>>>> No, the same problem is still there. You either need to use a very long
> >>>>> line, or you need to introduce a variable holding the list of prereqs,
> >>>>> like I've done in my series.
> >>>>
> >>>> I got
> >>>>
> >>>> $(srcdir)/../opcodes/i386-init.h $(srcdir)/../opcodes/i386-tbl.h:
> >>>> $(srcdir)/../opcodes/i386-opc.tbl \
> >>>> $(srcdir)/../opcodes/i386-reg.tbl \
> >>>> $(srcdir)/../opcodes/i386-opc.h \
> >>>> $(srcdir)/../opcodes/i386-gen.c
> >>>> $(MAKE) -C ../opcodes gen-i386-tbl
> >>>>
> >>>> and
> >>>>
> >>>> $(srcdir)/../opcodes/i386-init.h $(srcdir)/../opcodes/i386-tbl.h: #
> >>>> $(srcdir)/../opcodes/i386-opc.tbl \
> >>>> $(srcdir)/../opcodes/i386-reg.tbl \
> >>>> $(srcdir)/../opcodes/i386-opc.h \
> >>>> $(srcdir)/../opcodes/i386-gen.c
> >>>> $(MAKE) -C ../opcodes gen-i386-tbl
> >>>>
> >>>> I didn't run into any problems.
> >>>>
> >>>>>>> And then your rule / dependency won't be enough on a "maintainer-clean"
> >>>>>>> tree, i.e. when the generated headers aren't there at all, and when
> >>>>>>> config/.deps/tc-i386.Po is still empty. In that case nothing would
> >>>>>>> trigger their generation; an explicit dependency of config/tc-i386.o on
> >>>>>>> these headers needs adding here.
> >>>>>>
> >>>>>> Fixed.
> >>>>>>
> >>>>>>> Finally you're missing a dependency of the generated headers on
> >>>>>>> i386-gen.c.
> >>>>>>
> >>>>>> They have a dependency on i386-gen which depends on i386-gen.c.
> >>>>>
> >>>>> In opcodes/, yes, but talk was about the rule in gas/. Yet despite
> >>>>> your comment above I see that you've added the missing dependency.
> >>>>>
> >>>>>> Here is the v2 patch.
> >>>>>
> >>>>> As said in reply to v1 - my objection to this particular use of make
> >>>>> recursion remains.
> >>>>
> >>>> The gen-i386-tbl rule doesn't touch any files used by libopcodes.
> >>>
> >>> There are
> >>>
> >>> bfd/Makefile.in: ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS)
> >>> $$local_target) \
> >>> binutils/Makefile.in: ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS)
> >>> $$local_target) \
> >>> gas/Makefile.in: ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS)
> >>> $$local_target) \
> >>
> >> I'm glad you spotted this yourself - I was just about to point out
> >> that my concern isn't only a theoretical one, because of the
> >> generated makefiles we use. You don't draw any conclusion though:
> >> Are you willing to accept my approach, specifically reworked to
> >> account for an extra request of yours? Or are you meaning to make
> >> another attempt yourself, avoiding the undue make recursion?
> >>
> >
> > Calling $(MAKE) in Makefile is very normal in binutils-gdb.
>
> Any further examples where this isn't done strictly top-down, or in
> a properly controlled way within a single directory? I can indeed
> spot many instances of $(MAKE), but none matching the pattern you
> intend to introduce.
>
> > I don't see anything wrong with my approach. I prefer my
> > approach.
>
> I understand you prefer it, but given you've found what's wrong
> yourself, I'm puzzled by "I don't see anything wrong with my
> approach". Or wait - looks like I misread what you pointed out
> above: That looks to be something from the top level Makefile.
> Yet then again I can't spot any such in my build trees. Where is
> that excerpt from? (I can spot somewhat similar patterns, but
> they're used strictly to recurse _down_, just like looks to be
> the case with what you've quoted.)
>
> In any event, a practical manifestation of the issue I've said
> I'm concerned of is this: If a 2nd party anywhere in the tree did
> the same you do, and if the two $(MAKE) invocations then raced
> with one another, then it's plain undefined what would happen to
Fixed.
> the recursed-into Makefile when that needs re-generating for
> whatever reason. Hence $(MAKE) recursion should only occur
> strictly top-down, with (suitably controlled) recursion _within_
> a directory possibly being okay (would need proving for every
> individual instance).
>
> Jan
H.J.
---
As Jan Beulich <jbeulich@suse.com> noticed, since i386-init.h and
i386-tbl.h are only used by tc-i386.c, we can remove libopcodes
dependency by including opcodes/i386-tbl.h directly.
gas/
* Makefile.am ($(srcdir)/../opcodes/i386-init.h
$(srcdir)/../opcodes/i386-tbl.h): New rule.
* configure.ac (need_opcodes): Don't set for i386.
* config/tc-i386.c: Include "opcodes/i386-tbl.h".
* Makefile.in: Regenerated.
* configure: Likewise.
opcodes/
* Makefile.am (TARGET32_LIBOPCODES_CFILES): Remove i386-opc.c.
(i386-opc.lo): Removed.
($(srcdir)/i386-tbl.h): New rule.
($(srcdir)/i386-init.h): Likewise.
(gen-i386-tbl): Likewise.
* configure.ac: Remove i386-opc.lo.
* i386-opc.c: Removed.
* i386-opc.h (insn_template): Change name to const char *.
(i386_regtab): Removed.
(i386_regtab_size): Likewise.
* Makefile.in: Regenerated.
* configure: Likewise.
* po/POTFILES.in: Likewise.
---
gas/Makefile.am | 12 ++++++++++++
gas/Makefile.in | 12 ++++++++++++
gas/config/tc-i386.c | 1 +
gas/configure | 2 +-
gas/configure.ac | 2 +-
opcodes/Makefile.am | 6 +-----
opcodes/Makefile.in | 7 +------
opcodes/configure | 2 +-
opcodes/configure.ac | 2 +-
opcodes/i386-opc.c | 24 ------------------------
opcodes/i386-opc.h | 5 +----
opcodes/po/POTFILES.in | 1 -
12 files changed, 32 insertions(+), 44 deletions(-)
delete mode 100644 opcodes/i386-opc.c
Comments
On 01.12.2022 19:26, H.J. Lu wrote:
> On Thu, Dec 01, 2022 at 08:41:28AM +0100, Jan Beulich wrote:
>> I understand you prefer it, but given you've found what's wrong
>> yourself, I'm puzzled by "I don't see anything wrong with my
>> approach". Or wait - looks like I misread what you pointed out
>> above: That looks to be something from the top level Makefile.
>> Yet then again I can't spot any such in my build trees. Where is
>> that excerpt from? (I can spot somewhat similar patterns, but
>> they're used strictly to recurse _down_, just like looks to be
>> the case with what you've quoted.)
>>
>> In any event, a practical manifestation of the issue I've said
>> I'm concerned of is this: If a 2nd party anywhere in the tree did
>> the same you do, and if the two $(MAKE) invocations then raced
>> with one another, then it's plain undefined what would happen to
>
> Fixed.
In which way? You still ...
> --- a/gas/Makefile.am
> +++ b/gas/Makefile.am
> @@ -448,6 +448,18 @@ development.exp: $(BFDDIR)/development.sh
> $(EGREP) "(development|experimental)=" $(BFDDIR)/development.sh \
> | $(AWK) -F= '{ print "set " $$1 " " $$2 }' > $@
>
> +config/tc-i386.@OBJEXT@: $(srcdir)/../opcodes/i386-init.h \
> + $(srcdir)/../opcodes/i386-tbl.h
> +
> +# i386-gen will generate both headers in one go. Use a pattern rule to
> +# properly express this, with the inner dash ('-') arbitrarily chosen to
> +# be the stem.
> +$(srcdir)/../opcodes/i386%init.h $(srcdir)/../opcodes/i386%tbl.h: @MAINT@ $(srcdir)/../opcodes/i386-opc.tbl \
> + $(srcdir)/../opcodes/i386-reg.tbl \
> + $(srcdir)/../opcodes/i386-opc.h \
> + $(srcdir)/../opcodes/i386-gen.c
> + $(MAKE) -C ../opcodes gen-i386-tbl
... wrongly recurse from gas/ into opcodes/. In fact I can't spot any
change in regard to the cross-subdir operation that I continue to
object to. I'm afraid I'm unaware of ways to address this other than
by avoiding the recursive $(MAKE) invocation altogether.
Jan
On Thu, Dec 1, 2022 at 11:16 PM Jan Beulich <jbeulich@suse.com> wrote:
>
> On 01.12.2022 19:26, H.J. Lu wrote:
> > On Thu, Dec 01, 2022 at 08:41:28AM +0100, Jan Beulich wrote:
> >> I understand you prefer it, but given you've found what's wrong
> >> yourself, I'm puzzled by "I don't see anything wrong with my
> >> approach". Or wait - looks like I misread what you pointed out
> >> above: That looks to be something from the top level Makefile.
> >> Yet then again I can't spot any such in my build trees. Where is
> >> that excerpt from? (I can spot somewhat similar patterns, but
> >> they're used strictly to recurse _down_, just like looks to be
> >> the case with what you've quoted.)
> >>
> >> In any event, a practical manifestation of the issue I've said
> >> I'm concerned of is this: If a 2nd party anywhere in the tree did
> >> the same you do, and if the two $(MAKE) invocations then raced
> >> with one another, then it's plain undefined what would happen to
> >
> > Fixed.
>
> In which way? You still ...
>
> > --- a/gas/Makefile.am
> > +++ b/gas/Makefile.am
> > @@ -448,6 +448,18 @@ development.exp: $(BFDDIR)/development.sh
> > $(EGREP) "(development|experimental)=" $(BFDDIR)/development.sh \
> > | $(AWK) -F= '{ print "set " $$1 " " $$2 }' > $@
> >
> > +config/tc-i386.@OBJEXT@: $(srcdir)/../opcodes/i386-init.h \
> > + $(srcdir)/../opcodes/i386-tbl.h
> > +
> > +# i386-gen will generate both headers in one go. Use a pattern rule to
> > +# properly express this, with the inner dash ('-') arbitrarily chosen to
> > +# be the stem.
> > +$(srcdir)/../opcodes/i386%init.h $(srcdir)/../opcodes/i386%tbl.h: @MAINT@ $(srcdir)/../opcodes/i386-opc.tbl \
> > + $(srcdir)/../opcodes/i386-reg.tbl \
> > + $(srcdir)/../opcodes/i386-opc.h \
> > + $(srcdir)/../opcodes/i386-gen.c
> > + $(MAKE) -C ../opcodes gen-i386-tbl
>
> ... wrongly recurse from gas/ into opcodes/. In fact I can't spot any
> change in regard to the cross-subdir operation that I continue to
> object to. I'm afraid I'm unaware of ways to address this other than
> by avoiding the recursive $(MAKE) invocation altogether.
$(srcdir)/../opcodes/i386%init.h $(srcdir)/../opcodes/i386%tbl.h
will invoke $(MAKE) only once.
On 02.12.2022 18:19, H.J. Lu wrote:
> On Thu, Dec 1, 2022 at 11:16 PM Jan Beulich <jbeulich@suse.com> wrote:
>>
>> On 01.12.2022 19:26, H.J. Lu wrote:
>>> On Thu, Dec 01, 2022 at 08:41:28AM +0100, Jan Beulich wrote:
>>>> I understand you prefer it, but given you've found what's wrong
>>>> yourself, I'm puzzled by "I don't see anything wrong with my
>>>> approach". Or wait - looks like I misread what you pointed out
>>>> above: That looks to be something from the top level Makefile.
>>>> Yet then again I can't spot any such in my build trees. Where is
>>>> that excerpt from? (I can spot somewhat similar patterns, but
>>>> they're used strictly to recurse _down_, just like looks to be
>>>> the case with what you've quoted.)
>>>>
>>>> In any event, a practical manifestation of the issue I've said
>>>> I'm concerned of is this: If a 2nd party anywhere in the tree did
>>>> the same you do, and if the two $(MAKE) invocations then raced
>>>> with one another, then it's plain undefined what would happen to
>>>
>>> Fixed.
>>
>> In which way? You still ...
>>
>>> --- a/gas/Makefile.am
>>> +++ b/gas/Makefile.am
>>> @@ -448,6 +448,18 @@ development.exp: $(BFDDIR)/development.sh
>>> $(EGREP) "(development|experimental)=" $(BFDDIR)/development.sh \
>>> | $(AWK) -F= '{ print "set " $$1 " " $$2 }' > $@
>>>
>>> +config/tc-i386.@OBJEXT@: $(srcdir)/../opcodes/i386-init.h \
>>> + $(srcdir)/../opcodes/i386-tbl.h
>>> +
>>> +# i386-gen will generate both headers in one go. Use a pattern rule to
>>> +# properly express this, with the inner dash ('-') arbitrarily chosen to
>>> +# be the stem.
>>> +$(srcdir)/../opcodes/i386%init.h $(srcdir)/../opcodes/i386%tbl.h: @MAINT@ $(srcdir)/../opcodes/i386-opc.tbl \
>>> + $(srcdir)/../opcodes/i386-reg.tbl \
>>> + $(srcdir)/../opcodes/i386-opc.h \
>>> + $(srcdir)/../opcodes/i386-gen.c
>>> + $(MAKE) -C ../opcodes gen-i386-tbl
>>
>> ... wrongly recurse from gas/ into opcodes/. In fact I can't spot any
>> change in regard to the cross-subdir operation that I continue to
>> object to. I'm afraid I'm unaware of ways to address this other than
>> by avoiding the recursive $(MAKE) invocation altogether.
>
> $(srcdir)/../opcodes/i386%init.h $(srcdir)/../opcodes/i386%tbl.h
> will invoke $(MAKE) only once.
But that was a separate problem I was complaining about. This does in no
way address the issue of inappropriate make recursion.
Unless I see a technically correct version from you by the end of this
week, I will commit my variant (series) early next week. It is pretty
unacceptable for you to block my (also further) work by insisting on the
use of a broken alternative patch. I've clearly indicated that I'm okay
with any solution that's better than mine, but such a solution has to be
free of (pretty obvious) flaws.
Jan
@@ -448,6 +448,18 @@ development.exp: $(BFDDIR)/development.sh
$(EGREP) "(development|experimental)=" $(BFDDIR)/development.sh \
| $(AWK) -F= '{ print "set " $$1 " " $$2 }' > $@
+config/tc-i386.@OBJEXT@: $(srcdir)/../opcodes/i386-init.h \
+ $(srcdir)/../opcodes/i386-tbl.h
+
+# i386-gen will generate both headers in one go. Use a pattern rule to
+# properly express this, with the inner dash ('-') arbitrarily chosen to
+# be the stem.
+$(srcdir)/../opcodes/i386%init.h $(srcdir)/../opcodes/i386%tbl.h: @MAINT@ $(srcdir)/../opcodes/i386-opc.tbl \
+ $(srcdir)/../opcodes/i386-reg.tbl \
+ $(srcdir)/../opcodes/i386-opc.h \
+ $(srcdir)/../opcodes/i386-gen.c
+ $(MAKE) -C ../opcodes gen-i386-tbl
+
EXTRA_as_new_SOURCES += config/m68k-parse.y
config/m68k-parse.c: $(srcdir)/config/m68k-parse.y
$(SHELL) $(YLWRAP) $(srcdir)/config/m68k-parse.y y.tab.c $@ -- $(YACCCOMPILE)
@@ -2064,6 +2064,18 @@ check-DEJAGNU: site.exp
development.exp: $(BFDDIR)/development.sh
$(EGREP) "(development|experimental)=" $(BFDDIR)/development.sh \
| $(AWK) -F= '{ print "set " $$1 " " $$2 }' > $@
+
+config/tc-i386.@OBJEXT@: $(srcdir)/../opcodes/i386-init.h \
+ $(srcdir)/../opcodes/i386-tbl.h
+
+# i386-gen will generate both headers in one go. Use a pattern rule to
+# properly express this, with the inner dash ('-') arbitrarily chosen to
+# be the stem.
+$(srcdir)/../opcodes/i386%init.h $(srcdir)/../opcodes/i386%tbl.h: @MAINT@ $(srcdir)/../opcodes/i386-opc.tbl \
+ $(srcdir)/../opcodes/i386-reg.tbl \
+ $(srcdir)/../opcodes/i386-opc.h \
+ $(srcdir)/../opcodes/i386-gen.c
+ $(MAKE) -C ../opcodes gen-i386-tbl
config/m68k-parse.c: $(srcdir)/config/m68k-parse.y
$(SHELL) $(YLWRAP) $(srcdir)/config/m68k-parse.y y.tab.c $@ -- $(YACCCOMPILE)
config/m68k-parse.h: config/m68k-parse.c
@@ -34,6 +34,7 @@
#include "sframe.h"
#include "elf/x86-64.h"
#include "opcodes/i386-init.h"
+#include "opcodes/i386-tbl.h"
#include <limits.h>
#ifndef INFER_ADDR_PREFIX
@@ -12263,7 +12263,7 @@ _ACEOF
# Do we need the opcodes library?
case ${cpu_type} in
- vax | tic30)
+ i386 | vax | tic30)
;;
*)
@@ -420,7 +420,7 @@ changequote([,])dnl
# Do we need the opcodes library?
case ${cpu_type} in
- vax | tic30)
+ i386 | vax | tic30)
;;
*)
@@ -160,7 +160,6 @@ TARGET32_LIBOPCODES_CFILES = \
h8300-dis.c \
hppa-dis.c \
i386-dis.c \
- i386-opc.c \
ip2k-asm.c \
ip2k-desc.c \
ip2k-dis.c \
@@ -560,10 +559,7 @@ $(srcdir)/i386%tbl.h $(srcdir)/i386%init.h: @MAINT@ i386-gen$(EXEEXT_FOR_BUILD)
< $(srcdir)/i386-opc.tbl \
| ./i386-gen$(EXEEXT_FOR_BUILD) --srcdir $(srcdir)
-i386-opc.lo: $(srcdir)/i386-tbl.h
-# While not really a dependency, specify i386-init.h here as well to make sure
-# it is generated even if i386-tbl.h is present and up-to-date.
-i386-opc.lo: $(srcdir)/i386-init.h
+gen-i386-tbl: $(srcdir)/i386-tbl.h $(srcdir)/i386-init.h
ia64-gen$(EXEEXT_FOR_BUILD): ia64-gen.o $(BUILD_LIB_DEPS)
$(AM_V_CCLD)$(LINK_FOR_BUILD) ia64-gen.o $(BUILD_LIBS)
@@ -552,7 +552,6 @@ TARGET32_LIBOPCODES_CFILES = \
h8300-dis.c \
hppa-dis.c \
i386-dis.c \
- i386-opc.c \
ip2k-asm.c \
ip2k-desc.c \
ip2k-dis.c \
@@ -945,7 +944,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/h8300-dis.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hppa-dis.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/i386-dis.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/i386-opc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ia64-dis.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ia64-opc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ip2k-asm.Plo@am__quote@
@@ -1535,10 +1533,7 @@ $(srcdir)/i386%tbl.h $(srcdir)/i386%init.h: @MAINT@ i386-gen$(EXEEXT_FOR_BUILD)
< $(srcdir)/i386-opc.tbl \
| ./i386-gen$(EXEEXT_FOR_BUILD) --srcdir $(srcdir)
-i386-opc.lo: $(srcdir)/i386-tbl.h
-# While not really a dependency, specify i386-init.h here as well to make sure
-# it is generated even if i386-tbl.h is present and up-to-date.
-i386-opc.lo: $(srcdir)/i386-init.h
+gen-i386-tbl: $(srcdir)/i386-tbl.h $(srcdir)/i386-init.h
ia64-gen$(EXEEXT_FOR_BUILD): ia64-gen.o $(BUILD_LIB_DEPS)
$(AM_V_CCLD)$(LINK_FOR_BUILD) ia64-gen.o $(BUILD_LIBS)
@@ -12534,7 +12534,7 @@ if test x${all_targets} = xfalse ; then
bfd_h8300_arch) ta="$ta h8300-dis.lo" ;;
bfd_hppa_arch) ta="$ta hppa-dis.lo" ;;
bfd_i386_arch|bfd_iamcu_arch)
- ta="$ta i386-dis.lo i386-opc.lo" ;;
+ ta="$ta i386-dis.lo" ;;
bfd_ia64_arch) ta="$ta ia64-dis.lo ia64-opc.lo" ;;
bfd_ip2k_arch) ta="$ta ip2k-asm.lo ip2k-desc.lo ip2k-dis.lo ip2k-ibld.lo ip2k-opc.lo" using_cgen=yes ;;
bfd_epiphany_arch) ta="$ta epiphany-asm.lo epiphany-desc.lo epiphany-dis.lo epiphany-ibld.lo epiphany-opc.lo" using_cgen=yes ;;
@@ -282,7 +282,7 @@ if test x${all_targets} = xfalse ; then
bfd_h8300_arch) ta="$ta h8300-dis.lo" ;;
bfd_hppa_arch) ta="$ta hppa-dis.lo" ;;
bfd_i386_arch|bfd_iamcu_arch)
- ta="$ta i386-dis.lo i386-opc.lo" ;;
+ ta="$ta i386-dis.lo" ;;
bfd_ia64_arch) ta="$ta ia64-dis.lo ia64-opc.lo" ;;
bfd_ip2k_arch) ta="$ta ip2k-asm.lo ip2k-desc.lo ip2k-dis.lo ip2k-ibld.lo ip2k-opc.lo" using_cgen=yes ;;
bfd_epiphany_arch) ta="$ta epiphany-asm.lo epiphany-desc.lo epiphany-dis.lo epiphany-ibld.lo epiphany-opc.lo" using_cgen=yes ;;
deleted file mode 100644
@@ -1,24 +0,0 @@
-/* Intel 80386 opcode table
- Copyright (C) 2007-2022 Free Software Foundation, Inc.
-
- This file is part of the GNU opcodes library.
-
- This library is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- It is distributed in the hope that it will be useful, but WITHOUT
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
- License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
- MA 02110-1301, USA. */
-
-#include "sysdep.h"
-#include "libiberty.h"
-#include "i386-opc.h"
-#include "i386-tbl.h"
@@ -918,7 +918,7 @@ typedef union i386_operand_type
typedef struct insn_template
{
/* instruction name sans width suffix ("mov" for movl insns) */
- char *name;
+ const char *name;
/* Bitfield arrangement is such that individual fields can be easily
extracted (in native builds at least) - either by at most a masking
@@ -1005,6 +1005,3 @@ typedef struct
#define Dw2Inval (-1)
}
reg_entry;
-
-extern const reg_entry i386_regtab[];
-extern const unsigned int i386_regtab_size;
@@ -73,7 +73,6 @@ h8300-dis.c
hppa-dis.c
i386-dis.c
i386-gen.c
-i386-opc.c
i386-opc.h
ia64-asmtab.c
ia64-asmtab.h