[CRIS] Don't internal error if forced big endian
This fixes: $ ./gdb -q -ex "set endian big" -ex "set architecture cris" The target is assumed to be big endian .../src/gdb/cris-tdep.c:4051: internal-error: cris_gdbarch_init: big endian byte order in info A problem internal to GDB has been detected, further debugging may prove unreliable. Quit this debugging session? (y or n) The "set cris-version" command can likewise cause internal errors. The gdbarch init routine should be returning 0 to reject the architecture instead of internal erroring on user input. gdb/ChangeLog: 2016-03-09 Pedro Alves <palves@redhat.com> * cris-tdep.c (cris_gdbarch_init): Return 0 if the info's byte order is BFD_ENDIAN_BIG or if the cris version is unsupported.
This commit is contained in:
parent
d7a87b5e43
commit
114d7832b0
@ -1,3 +1,8 @@
|
||||
2016-03-09 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* cris-tdep.c (cris_gdbarch_init): Return 0 if the info's byte
|
||||
order is BFD_ENDIAN_BIG or if the cris version is unsupported.
|
||||
|
||||
2016-03-09 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* doublest.c: Extend comments.
|
||||
|
@ -4048,10 +4048,10 @@ cris_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
break;
|
||||
|
||||
case BFD_ENDIAN_BIG:
|
||||
internal_error (__FILE__, __LINE__,
|
||||
_("cris_gdbarch_init: big endian byte order in info"));
|
||||
break;
|
||||
|
||||
/* Cris is always little endian, but the user could have forced
|
||||
big endian with "set endian". */
|
||||
return 0;
|
||||
|
||||
default:
|
||||
internal_error (__FILE__, __LINE__,
|
||||
_("cris_gdbarch_init: unknown byte order in info"));
|
||||
@ -4083,9 +4083,7 @@ cris_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
case 8:
|
||||
case 9:
|
||||
/* Old versions; not supported. */
|
||||
internal_error (__FILE__, __LINE__,
|
||||
_("cris_gdbarch_init: unsupported CRIS version"));
|
||||
break;
|
||||
return 0;
|
||||
|
||||
case 10:
|
||||
case 11:
|
||||
@ -4125,8 +4123,8 @@ cris_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
break;
|
||||
|
||||
default:
|
||||
internal_error (__FILE__, __LINE__,
|
||||
_("cris_gdbarch_init: unknown CRIS version"));
|
||||
/* Unknown version. */
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Dummy frame functions (shared between CRISv10 and CRISv32 since they
|
||||
|
Loading…
x
Reference in New Issue
Block a user