Browse Source

sim: cr16/d10v: move storage out of header

These ports declare their State variable in a header and then include
multiple times.  This causes linker errors with newer gcc due to the
change in -fno-common behavior.  Move the storage to a C file so we
only have one instance of it in the final program.
binutils-2_37-branch
Mike Frysinger 5 years ago
parent
commit
7eb99e5e27
  1. 5
      sim/cr16/ChangeLog
  2. 4
      sim/cr16/cr16_sim.h
  3. 2
      sim/cr16/interp.c
  4. 5
      sim/d10v/ChangeLog
  5. 4
      sim/d10v/d10v_sim.h
  6. 2
      sim/d10v/interp.c

5
sim/cr16/ChangeLog

@ -1,3 +1,8 @@
2021-01-09 Mike Frysinger <vapier@gentoo.org>
* cr16_sim.h (State): Change to an extern.
* interp.c (State): Define.
2021-01-09 Mike Frysinger <vapier@gentoo.org>
* configure: Regenerate.

4
sim/cr16/cr16_sim.h

@ -243,7 +243,9 @@ struct _state
enum _ins_type ins_type;
} State;
};
extern struct _state State;
extern uint32 OP[4];

2
sim/cr16/interp.c

@ -33,6 +33,8 @@
#include "gdb/signals.h"
#include "opcode/cr16.h"
struct _state State;
int cr16_debug;
uint32 OP[4];

5
sim/d10v/ChangeLog

@ -1,3 +1,8 @@
2021-01-09 Mike Frysinger <vapier@gentoo.org>
* d10v_sim.h (State): Change to an extern.
* interp.c (State): Define.
2021-01-09 Mike Frysinger <vapier@gentoo.org>
* configure: Regenerate.

4
sim/d10v/d10v_sim.h

@ -270,7 +270,9 @@ struct _state
enum _ins_type ins_type;
} State;
};
extern struct _state State;
extern uint16 OP[4];

2
sim/d10v/interp.c

@ -25,6 +25,8 @@
enum _leftright { LEFT_FIRST, RIGHT_FIRST };
struct _state State;
int d10v_debug;
/* Set this to true to get the previous segment layout. */

Loading…
Cancel
Save