Change "xor" name in cpu_core to allow building with iso646.h or C++ compiler
authorКомпан, Вячеслав Олегович <kompan.vo@phystech.edu>
Fri, 28 Sep 2018 20:00:46 +0000 (16:00 -0400)
committerSimon Marchi <simon.marchi@ericsson.com>
Fri, 28 Sep 2018 20:00:46 +0000 (16:00 -0400)
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.

sim/common/ChangeLog
sim/common/sim-core.c
sim/common/sim-core.h

index 313a467c36eefdaa6cace3e57e1b653a2fe66022..1f6cba2fd5ccf8a3e862e140351fbb286310dcf3 100644 (file)
@@ -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>
 
index f26a374bb30ddfa956afd3948cd426bde6260e4b..862f36b5f277223f3e84a4a5323ba14bff91aa58 100644 (file)
@@ -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
index ccfe48fba607872ca1b27f7b345e044594ec8145..305d1564b3b42177e450f7ea4bd568843297db5e 100644 (file)
@@ -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;