diff mbox

qapi: Fix compilation failure on sparc

Message ID 1454439920-14661-1-git-send-email-eblake@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Eric Blake Feb. 2, 2016, 7:05 p.m. UTC
Commit 86f4b687 broke compilation on sparc, which has a preprocessor
pollution of '#define sparc 1'.  Treat it the same way as we do for
the pollution with 'unix', so that QMP remains backwards compatible
and only the C code needs to use the alternative 'q_sparc' spelling.

CC: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Eric Blake <eblake@redhat.com>
---

Done as a followup to the same style of patch for MIPS; or we could
squash this into one patch.

 scripts/qapi.py | 2 +-
 cpus.c          | 6 +++---
 hmp.c           | 6 ++++--
 3 files changed, 8 insertions(+), 6 deletions(-)

Comments

Markus Armbruster Feb. 2, 2016, 8:04 p.m. UTC | #1
Eric Blake <eblake@redhat.com> writes:

> Commit 86f4b687 broke compilation on sparc, which has a preprocessor
> pollution of '#define sparc 1'.  Treat it the same way as we do for
> the pollution with 'unix', so that QMP remains backwards compatible
> and only the C code needs to use the alternative 'q_sparc' spelling.
>
> CC: Peter Maydell <peter.maydell@linaro.org>
> Signed-off-by: Eric Blake <eblake@redhat.com>
> ---
>
> Done as a followup to the same style of patch for MIPS; or we could
> squash this into one patch.

Applied to qapi-next squashed:

    qapi: Fix compilation failure on MIPS and SPARC
    
    Commit 86f4b687 broke compilation on MIPS and SPARC, which have a
    preprocessor pollution of '#define mips 1' and '#define space 1',
    respectively.  Treat it the same way as we do for the pollution with
    'unix', so that QMP remains backwards compatible and only the C code
    needs to use the alternative 'q_mips' spelling.
    
    CC: James Hogan <james.hogan@imgtec.com>
    CC: Peter Maydell <peter.maydell@linaro.org>
    Signed-off-by: Eric Blake <eblake@redhat.com>
    Tested-by: James Hogan <james.hogan@imgtec.com>
    Signed-off-by: Markus Armbruster <armbru@redhat.com>
Eric Blake Feb. 2, 2016, 10 p.m. UTC | #2
On 02/02/2016 01:04 PM, Markus Armbruster wrote:
> Eric Blake <eblake@redhat.com> writes:
> 
>> Commit 86f4b687 broke compilation on sparc, which has a preprocessor
>> pollution of '#define sparc 1'.  Treat it the same way as we do for
>> the pollution with 'unix', so that QMP remains backwards compatible
>> and only the C code needs to use the alternative 'q_sparc' spelling.
>>
>> CC: Peter Maydell <peter.maydell@linaro.org>
>> Signed-off-by: Eric Blake <eblake@redhat.com>
>> ---
>>
>> Done as a followup to the same style of patch for MIPS; or we could
>> squash this into one patch.
> 
> Applied to qapi-next squashed:
> 
>     qapi: Fix compilation failure on MIPS and SPARC
>     
>     Commit 86f4b687 broke compilation on MIPS and SPARC, which have a
>     preprocessor pollution of '#define mips 1' and '#define space 1',

s/space/sparc/

>     respectively.  Treat it the same way as we do for the pollution with
>     'unix', so that QMP remains backwards compatible and only the C code
>     needs to use the alternative 'q_mips' spelling.
>     
>     CC: James Hogan <james.hogan@imgtec.com>
>     CC: Peter Maydell <peter.maydell@linaro.org>
>     Signed-off-by: Eric Blake <eblake@redhat.com>
>     Tested-by: James Hogan <james.hogan@imgtec.com>
>     Signed-off-by: Markus Armbruster <armbru@redhat.com>
>
Markus Armbruster Feb. 3, 2016, 7:01 a.m. UTC | #3
Eric Blake <eblake@redhat.com> writes:

> On 02/02/2016 01:04 PM, Markus Armbruster wrote:
>> Eric Blake <eblake@redhat.com> writes:
>> 
>>> Commit 86f4b687 broke compilation on sparc, which has a preprocessor
>>> pollution of '#define sparc 1'.  Treat it the same way as we do for
>>> the pollution with 'unix', so that QMP remains backwards compatible
>>> and only the C code needs to use the alternative 'q_sparc' spelling.
>>>
>>> CC: Peter Maydell <peter.maydell@linaro.org>
>>> Signed-off-by: Eric Blake <eblake@redhat.com>
>>> ---
>>>
>>> Done as a followup to the same style of patch for MIPS; or we could
>>> squash this into one patch.
>> 
>> Applied to qapi-next squashed:
>> 
>>     qapi: Fix compilation failure on MIPS and SPARC
>>     
>>     Commit 86f4b687 broke compilation on MIPS and SPARC, which have a
>>     preprocessor pollution of '#define mips 1' and '#define space 1',
>
> s/space/sparc/
>
>>     respectively.  Treat it the same way as we do for the pollution with
>>     'unix', so that QMP remains backwards compatible and only the C code
>>     needs to use the alternative 'q_mips' spelling.
>>     
>>     CC: James Hogan <james.hogan@imgtec.com>
>>     CC: Peter Maydell <peter.maydell@linaro.org>
>>     Signed-off-by: Eric Blake <eblake@redhat.com>
>>     Tested-by: James Hogan <james.hogan@imgtec.com>
>>     Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> 

Fixed up and pushed again.  Thanks!
diff mbox

Patch

diff --git a/scripts/qapi.py b/scripts/qapi.py
index 7f114c4..965b157 100644
--- a/scripts/qapi.py
+++ b/scripts/qapi.py
@@ -1482,7 +1482,7 @@  def c_name(name, protect=True):
                      'and', 'and_eq', 'bitand', 'bitor', 'compl', 'not',
                      'not_eq', 'or', 'or_eq', 'xor', 'xor_eq'])
     # namespace pollution:
-    polluted_words = set(['unix', 'errno', 'mips'])
+    polluted_words = set(['unix', 'errno', 'mips', 'sparc'])
     name = name.translate(c_name_trans)
     if protect and (name in c89_words | c99_words | c11_words | gcc_words
                     | cpp_words | polluted_words):
diff --git a/cpus.c b/cpus.c
index c8a2317..898426c 100644
--- a/cpus.c
+++ b/cpus.c
@@ -1576,9 +1576,9 @@  CpuInfoList *qmp_query_cpus(Error **errp)
         info->value->u.ppc->nip = env->nip;
 #elif defined(TARGET_SPARC)
         info->value->arch = CPU_INFO_ARCH_SPARC;
-        info->value->u.sparc = g_new0(CpuInfoSPARC, 1);
-        info->value->u.sparc->pc = env->pc;
-        info->value->u.sparc->npc = env->npc;
+        info->value->u.q_sparc = g_new0(CpuInfoSPARC, 1);
+        info->value->u.q_sparc->pc = env->pc;
+        info->value->u.q_sparc->npc = env->npc;
 #elif defined(TARGET_MIPS)
         info->value->arch = CPU_INFO_ARCH_MIPS;
         info->value->u.q_mips = g_new0(CpuInfoMIPS, 1);
diff --git a/hmp.c b/hmp.c
index ef98344..cbf6d61 100644
--- a/hmp.c
+++ b/hmp.c
@@ -318,8 +318,10 @@  void hmp_info_cpus(Monitor *mon, const QDict *qdict)
             monitor_printf(mon, " nip=0x%016" PRIx64, cpu->value->u.ppc->nip);
             break;
         case CPU_INFO_ARCH_SPARC:
-            monitor_printf(mon, " pc=0x%016" PRIx64, cpu->value->u.sparc->pc);
-            monitor_printf(mon, " npc=0x%016" PRIx64, cpu->value->u.sparc->npc);
+            monitor_printf(mon, " pc=0x%016" PRIx64,
+                           cpu->value->u.q_sparc->pc);
+            monitor_printf(mon, " npc=0x%016" PRIx64,
+                           cpu->value->u.q_sparc->npc);
             break;
         case CPU_INFO_ARCH_MIPS:
             monitor_printf(mon, " PC=0x%016" PRIx64, cpu->value->u.q_mips->PC);