Change "xor" name in cpu_core to allow building with iso646.h or C++ compiler
This code was introduced back in 1998, and C99 appeared next year, defining the `xor` as an 'alternative keyword' if iso646.h is included. Moreover, C++98 defines it on the language level. As a result, the code is not buildable with C++ compiler or if iso646.h is included beforehand. According to comment, `sim_cpu_core` is mostly a clone of `sim_core`, so I renamed it to `byte_xor` as it's called in `sim_core`. sim/common/ChangeLog: * sim-core.h (sim_cpu_core): Rename cpu_core.xor to cpu_core.byte_xor. * sim-core.c (sim_core_set_xor): Likewise. (sim_core_xor_read_buffer): Likewise. (sim_core_xor_write_buffer): Likewise.
This commit is contained in:
parent
f67ffa6a78
commit
2283a21049
|
@ -1,3 +1,11 @@
|
|||
2018-09-28 Компан, Вячеслав Олегович <kompan.vo@phystech.edu>
|
||||
|
||||
* sim-core.h (sim_cpu_core): Rename cpu_core.xor to
|
||||
cpu_core.byte_xor.
|
||||
* sim-core.c (sim_core_set_xor): Likewise.
|
||||
(sim_core_xor_read_buffer): Likewise.
|
||||
(sim_core_xor_write_buffer): Likewise.
|
||||
|
||||
2017-12-12 Peter Gavin <pgavin@gmail.com>
|
||||
Stafford Horne <shorne@gmail.com>
|
||||
|
||||
|
|
|
@ -587,7 +587,7 @@ sim_core_set_xor (SIM_DESC sd,
|
|||
mask = 0;
|
||||
while (i - 1 < WITH_XOR_ENDIAN)
|
||||
{
|
||||
cpu_core->xor[i-1] = mask;
|
||||
cpu_core->byte_xor[i-1] = mask;
|
||||
mask = (mask << 1) & (WITH_XOR_ENDIAN - 1);
|
||||
i = (i << 1);
|
||||
}
|
||||
|
@ -634,7 +634,8 @@ sim_core_xor_read_buffer (SIM_DESC sd,
|
|||
address_word addr,
|
||||
unsigned nr_bytes)
|
||||
{
|
||||
address_word byte_xor = (cpu == NULL ? STATE_CORE (sd)->byte_xor : CPU_CORE (cpu)->xor[0]);
|
||||
address_word byte_xor
|
||||
= (cpu == NULL ? STATE_CORE (sd)->byte_xor : CPU_CORE (cpu)->byte_xor[0]);
|
||||
if (!WITH_XOR_ENDIAN || !byte_xor)
|
||||
return sim_core_read_buffer (sd, cpu, map, buffer, addr, nr_bytes);
|
||||
else
|
||||
|
@ -686,7 +687,8 @@ sim_core_xor_write_buffer (SIM_DESC sd,
|
|||
address_word addr,
|
||||
unsigned nr_bytes)
|
||||
{
|
||||
address_word byte_xor = (cpu == NULL ? STATE_CORE (sd)->byte_xor : CPU_CORE (cpu)->xor[0]);
|
||||
address_word byte_xor
|
||||
= (cpu == NULL ? STATE_CORE (sd)->byte_xor : CPU_CORE (cpu)->byte_xor[0]);
|
||||
if (!WITH_XOR_ENDIAN || !byte_xor)
|
||||
return sim_core_write_buffer (sd, cpu, map, buffer, addr, nr_bytes);
|
||||
else
|
||||
|
|
|
@ -89,7 +89,7 @@ struct _sim_core {
|
|||
|
||||
typedef struct _sim_cpu_core {
|
||||
sim_core_common common;
|
||||
address_word xor[WITH_XOR_ENDIAN + 1]; /* +1 to avoid zero-sized array */
|
||||
address_word byte_xor[WITH_XOR_ENDIAN + 1]; /* +1 to avoid zero-sized array */
|
||||
} sim_cpu_core;
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue