arc: Migrate to new target features
authorAnton Kolesov <Anton.Kolesov@synopsys.com>
Wed, 25 Oct 2017 18:51:54 +0000 (21:51 +0300)
committerShahab Vahedi <shahab@synopsys.com>
Mon, 16 Mar 2020 21:53:10 +0000 (22:53 +0100)
commit817a7585764366397879cbbedfd7e9c1454b656c
treeee49e58f1c4723d8b45afa836425b748b428911a
parent67430cd00afcc270a27e44b10f9ef4249d554e66
arc: Migrate to new target features

This patch replaces usage of target descriptions in ARC, where the whole
description is fixed in XML, with new target descriptions where XML describes
individual features, and GDB assembles those features into actual target
description.

v2:
Removed arc.c from ALLDEPFILES in gdb/Makefile.in.
Removed vim modeline from arc-tdep.c to have it in a separate patch.
Removed braces from one line "if/else".
Undid the type change for "jb_pc" (kept it as "int").
Joined the unnecessary line breaks into one line.
No more moving around arm targets in gdb/features/Makefile.
Changed pattern checking for ARC features from "arc/{aux,core}" to "arc/".

v3:
Added include gaurds to arc.h.
Added arc_read_description to _create_ target descriptions less.

v4:
Got rid of ARC_SYS_TYPE_NONE.
Renamed ARC_SYS_TYPE_INVALID to ARC_SYS_TYPE_NUM.
Fixed a few indentations/curly braces.
Converted arc_sys_type_to_str from a macro to an inline function.

gdb/ChangeLog:
2020-03-16  Anton Kolesov  <anton.kolesov@synopsys.com>
    Shahab Vahedi  <shahab@synopsys.com>

* Makefile.in: Add arch/arc.o
* configure.tgt: Likewise.
* arc-tdep.c (arc_tdesc_init): Use arc_read_description.
(_initialize_arc_tdep): Don't initialize old target descriptions.
        (arc_read_description): New function to cache target descriptions.
* arc-tdep.h (arc_read_description): Add proto type.
* arch/arc.c: New file.
* arch/arc.h: Likewise.
* features/Makefile: Replace old target descriptions with new.
* features/arc-arcompact.c: Remove.
* features/arc-arcompact.xml: Likewise.
* features/arc-v2.c: Likewise
* features/arc-v2.xml: Likewise
* features/arc/aux-arcompact.xml: New file.
* features/arc/aux-v2.xml: Likewise.
* features/arc/core-arcompact.xml: Likewise.
* features/arc/core-v2.xml: Likewise.
* features/arc/aux-arcompact.c: Generate.
* features/arc/aux-v2.c: Likewise.
* features/arc/core-arcompact.c: Likewise.
* features/arc/core-v2.c: Likewise.
* target-descriptions (maint_print_c_tdesc_cmd): Support ARC features.
21 files changed:
gdb/ChangeLog
gdb/Makefile.in
gdb/arc-tdep.c
gdb/arc-tdep.h
gdb/arch/arc.c [new file with mode: 0644]
gdb/arch/arc.h [new file with mode: 0644]
gdb/configure.tgt
gdb/features/Makefile
gdb/features/arc-arcompact.c [deleted file]
gdb/features/arc-arcompact.xml [deleted file]
gdb/features/arc-v2.c [deleted file]
gdb/features/arc-v2.xml [deleted file]
gdb/features/arc/aux-arcompact.c [new file with mode: 0644]
gdb/features/arc/aux-arcompact.xml [new file with mode: 0644]
gdb/features/arc/aux-v2.c [new file with mode: 0644]
gdb/features/arc/aux-v2.xml [new file with mode: 0644]
gdb/features/arc/core-arcompact.c [new file with mode: 0644]
gdb/features/arc/core-arcompact.xml [new file with mode: 0644]
gdb/features/arc/core-v2.c [new file with mode: 0644]
gdb/features/arc/core-v2.xml [new file with mode: 0644]
gdb/target-descriptions.c