Message ID | 1568296920-29939-1-git-send-email-frederic.konrad@adacore.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | target/m68k/fpu_helper.c: rename the access arguments | expand |
On 9/12/19 4:02 PM, KONRAD Frederic wrote: > The "access" arguments clash with a macro under Windows with MinGW: > CC m68k-softmmu/target/m68k/fpu_helper.o > target/m68k/fpu_helper.c: In function 'fmovem_predec': > target/m68k/fpu_helper.c:405:56: error: macro "access" passed 4 arguments, > but takes just 2 > size = access(env, addr, &env->fregs[i], ra); > > So this renames them access_fn. access() is not your friend... this reminds me of commit 05e015f73c3b5c50c237d3d8e555e25cfa543a5c Author: KONRAD Frederic <frederic.konrad@adacore.com> Date: Thu Sep 21 12:04:20 2017 +0200 memory: avoid a name clash with access macro This avoids a name clash with the access macro on windows 64: make CHK version_gen.h CC aarch64-softmmu/memory.o /home/konrad/qemu/memory.c: In function 'access_with_adjusted_size': /home/konrad/qemu/memory.c:591:73: error: macro "access" passed 7 arguments, \ but takes just 2 (size - access_size - i) * 8, access_mask, attrs); ^ > > Tested with: > ./configure --target-list=m68k-softmmu > make -j8 > > Signed-off-by: KONRAD Frederic <frederic.konrad@adacore.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > target/m68k/fpu_helper.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/target/m68k/fpu_helper.c b/target/m68k/fpu_helper.c > index 9b039c8..4137542 100644 > --- a/target/m68k/fpu_helper.c > +++ b/target/m68k/fpu_helper.c > @@ -396,14 +396,14 @@ typedef int (*float_access)(CPUM68KState *env, uint32_t addr, FPReg *fp, > uintptr_t ra); > > static uint32_t fmovem_predec(CPUM68KState *env, uint32_t addr, uint32_t mask, > - float_access access) > + float_access access_fn) > { > uintptr_t ra = GETPC(); > int i, size; > > for (i = 7; i >= 0; i--, mask <<= 1) { > if (mask & 0x80) { > - size = access(env, addr, &env->fregs[i], ra); > + size = access_fn(env, addr, &env->fregs[i], ra); > if ((mask & 0xff) != 0x80) { > addr -= size; > } > @@ -414,14 +414,14 @@ static uint32_t fmovem_predec(CPUM68KState *env, uint32_t addr, uint32_t mask, > } > > static uint32_t fmovem_postinc(CPUM68KState *env, uint32_t addr, uint32_t mask, > - float_access access) > + float_access access_fn) > { > uintptr_t ra = GETPC(); > int i, size; > > for (i = 0; i < 8; i++, mask <<= 1) { > if (mask & 0x80) { > - size = access(env, addr, &env->fregs[i], ra); > + size = access_fn(env, addr, &env->fregs[i], ra); > addr += size; > } > } >
Le 9/12/19 à 4:32 PM, Philippe Mathieu-Daudé a écrit : > On 9/12/19 4:02 PM, KONRAD Frederic wrote: >> The "access" arguments clash with a macro under Windows with MinGW: >> CC m68k-softmmu/target/m68k/fpu_helper.o >> target/m68k/fpu_helper.c: In function 'fmovem_predec': >> target/m68k/fpu_helper.c:405:56: error: macro "access" passed 4 arguments, >> but takes just 2 >> size = access(env, addr, &env->fregs[i], ra); >> >> So this renames them access_fn. > > access() is not your friend... this reminds me of > > commit 05e015f73c3b5c50c237d3d8e555e25cfa543a5c > Author: KONRAD Frederic <frederic.konrad@adacore.com> > Date: Thu Sep 21 12:04:20 2017 +0200 > > memory: avoid a name clash with access macro > > This avoids a name clash with the access macro on windows 64: True, I didn't catch this one at the time because we didn't build m68k. > > make > CHK version_gen.h > CC aarch64-softmmu/memory.o > /home/konrad/qemu/memory.c: In function 'access_with_adjusted_size': > /home/konrad/qemu/memory.c:591:73: error: macro "access" passed 7 > arguments, \ > but takes just 2 > (size - access_size - i) * 8, access_mask, attrs); > ^ >> >> Tested with: >> ./configure --target-list=m68k-softmmu >> make -j8 >> >> Signed-off-by: KONRAD Frederic <frederic.konrad@adacore.com> > > Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Thanks! Cheers, Fred
Le 12/09/2019 à 16:02, KONRAD Frederic a écrit : > The "access" arguments clash with a macro under Windows with MinGW: > CC m68k-softmmu/target/m68k/fpu_helper.o > target/m68k/fpu_helper.c: In function 'fmovem_predec': > target/m68k/fpu_helper.c:405:56: error: macro "access" passed 4 arguments, > but takes just 2 > size = access(env, addr, &env->fregs[i], ra); > > So this renames them access_fn. > > Tested with: > ./configure --target-list=m68k-softmmu > make -j8 > > Signed-off-by: KONRAD Frederic <frederic.konrad@adacore.com> > --- > target/m68k/fpu_helper.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/target/m68k/fpu_helper.c b/target/m68k/fpu_helper.c > index 9b039c8..4137542 100644 > --- a/target/m68k/fpu_helper.c > +++ b/target/m68k/fpu_helper.c > @@ -396,14 +396,14 @@ typedef int (*float_access)(CPUM68KState *env, uint32_t addr, FPReg *fp, > uintptr_t ra); > > static uint32_t fmovem_predec(CPUM68KState *env, uint32_t addr, uint32_t mask, > - float_access access) > + float_access access_fn) > { > uintptr_t ra = GETPC(); > int i, size; > > for (i = 7; i >= 0; i--, mask <<= 1) { > if (mask & 0x80) { > - size = access(env, addr, &env->fregs[i], ra); > + size = access_fn(env, addr, &env->fregs[i], ra); > if ((mask & 0xff) != 0x80) { > addr -= size; > } > @@ -414,14 +414,14 @@ static uint32_t fmovem_predec(CPUM68KState *env, uint32_t addr, uint32_t mask, > } > > static uint32_t fmovem_postinc(CPUM68KState *env, uint32_t addr, uint32_t mask, > - float_access access) > + float_access access_fn) > { > uintptr_t ra = GETPC(); > int i, size; > > for (i = 0; i < 8; i++, mask <<= 1) { > if (mask & 0x80) { > - size = access(env, addr, &env->fregs[i], ra); > + size = access_fn(env, addr, &env->fregs[i], ra); > addr += size; > } > } > Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Le 12/09/2019 à 16:02, KONRAD Frederic a écrit : > The "access" arguments clash with a macro under Windows with MinGW: > CC m68k-softmmu/target/m68k/fpu_helper.o > target/m68k/fpu_helper.c: In function 'fmovem_predec': > target/m68k/fpu_helper.c:405:56: error: macro "access" passed 4 arguments, > but takes just 2 > size = access(env, addr, &env->fregs[i], ra); > > So this renames them access_fn. > > Tested with: > ./configure --target-list=m68k-softmmu > make -j8 > > Signed-off-by: KONRAD Frederic <frederic.konrad@adacore.com> > --- > target/m68k/fpu_helper.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/target/m68k/fpu_helper.c b/target/m68k/fpu_helper.c > index 9b039c8..4137542 100644 > --- a/target/m68k/fpu_helper.c > +++ b/target/m68k/fpu_helper.c > @@ -396,14 +396,14 @@ typedef int (*float_access)(CPUM68KState *env, uint32_t addr, FPReg *fp, > uintptr_t ra); > > static uint32_t fmovem_predec(CPUM68KState *env, uint32_t addr, uint32_t mask, > - float_access access) > + float_access access_fn) > { > uintptr_t ra = GETPC(); > int i, size; > > for (i = 7; i >= 0; i--, mask <<= 1) { > if (mask & 0x80) { > - size = access(env, addr, &env->fregs[i], ra); > + size = access_fn(env, addr, &env->fregs[i], ra); > if ((mask & 0xff) != 0x80) { > addr -= size; > } > @@ -414,14 +414,14 @@ static uint32_t fmovem_predec(CPUM68KState *env, uint32_t addr, uint32_t mask, > } > > static uint32_t fmovem_postinc(CPUM68KState *env, uint32_t addr, uint32_t mask, > - float_access access) > + float_access access_fn) > { > uintptr_t ra = GETPC(); > int i, size; > > for (i = 0; i < 8; i++, mask <<= 1) { > if (mask & 0x80) { > - size = access(env, addr, &env->fregs[i], ra); > + size = access_fn(env, addr, &env->fregs[i], ra); > addr += size; > } > } > Applied to my trivial-patches branch. Thanks, Laurent
diff --git a/target/m68k/fpu_helper.c b/target/m68k/fpu_helper.c index 9b039c8..4137542 100644 --- a/target/m68k/fpu_helper.c +++ b/target/m68k/fpu_helper.c @@ -396,14 +396,14 @@ typedef int (*float_access)(CPUM68KState *env, uint32_t addr, FPReg *fp, uintptr_t ra); static uint32_t fmovem_predec(CPUM68KState *env, uint32_t addr, uint32_t mask, - float_access access) + float_access access_fn) { uintptr_t ra = GETPC(); int i, size; for (i = 7; i >= 0; i--, mask <<= 1) { if (mask & 0x80) { - size = access(env, addr, &env->fregs[i], ra); + size = access_fn(env, addr, &env->fregs[i], ra); if ((mask & 0xff) != 0x80) { addr -= size; } @@ -414,14 +414,14 @@ static uint32_t fmovem_predec(CPUM68KState *env, uint32_t addr, uint32_t mask, } static uint32_t fmovem_postinc(CPUM68KState *env, uint32_t addr, uint32_t mask, - float_access access) + float_access access_fn) { uintptr_t ra = GETPC(); int i, size; for (i = 0; i < 8; i++, mask <<= 1) { if (mask & 0x80) { - size = access(env, addr, &env->fregs[i], ra); + size = access_fn(env, addr, &env->fregs[i], ra); addr += size; } }
The "access" arguments clash with a macro under Windows with MinGW: CC m68k-softmmu/target/m68k/fpu_helper.o target/m68k/fpu_helper.c: In function 'fmovem_predec': target/m68k/fpu_helper.c:405:56: error: macro "access" passed 4 arguments, but takes just 2 size = access(env, addr, &env->fregs[i], ra); So this renames them access_fn. Tested with: ./configure --target-list=m68k-softmmu make -j8 Signed-off-by: KONRAD Frederic <frederic.konrad@adacore.com> --- target/m68k/fpu_helper.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)