qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC PATCH v4 00/29] Hexagon patch series


From: Philippe Mathieu-Daudé
Subject: Re: [RFC PATCH v4 00/29] Hexagon patch series
Date: Tue, 29 Sep 2020 14:22:28 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0

Hi Taylor,

On 9/28/20 7:28 PM, Taylor Simpson wrote:
> This series adds support for the Hexagon processor with Linux user support
> 
> See patch 02/34 Hexagon README for detailed information.
> 
> Once the series is applied, the Hexagon port will pass "make check-tcg".
> The series also includes Hexagon-specific tests in tcg/tests/hexagon.
> 
> The series is also available at https://github.com/quic/qemu on branch
> small_series_v4.
> 
> We have a parallel effort to make the Hexagon Linux toolchain publically
> available.
> 
> *** Known checkpatch issues ***
> 
> The following are known checkpatch errors in the series
>     target/hexagon/reg_fields.h         Complex macro
>     target/hexagon/attribs.h            Complex macro
>     target/hexagon/decode.c             Complex macro
>     target/hexagon/q6v_decode.c         Macro needs do - while
>     target/hexagon/printinsn.c          Macro needs do - while
>     target/hexagon/gen_semantics.c      Suspicious ; after while (0)
>     target/hexagon/gen_dectree_import.c Complex macro
>     target/hexagon/gen_dectree_import.c Suspicious ; after while (0)
>     target/hexagon/opcodes.c            Complex macro
>     target/hexagon/iclass.h             Complex macro
>     configure.sh                        Line over 90 characters
>     scripts/qemu-binfmt-conf.sh         Line over 90 characters
> 
> The following are known checkpatch warnings in the series
>     target/hexagon/fma_emu.c            Comments inside macro definition
>     target/hexagon/gen_tcg_funcs.py     Line over 80 characters
>     scripts/qemu-binfmt-conf.sh         Line over 80 characters

Using '../configure' '--target-list=hexagon-linux-user' '--disable-docs'
'--disable-tools' on Fedora 32 I am getting:

In file included from target/hexagon/op_helper.c:24:
target/hexagon/helper_funcs_generated.h: In function ‘helper_S2_vspliceib’:
target/hexagon/helper_funcs_generated.h:9669:50: error: ‘*’ in boolean
context, suggest ‘&&’ instead [-Werror=int-in-bool-context]
 9669 |     { RddV = fASHIFTL(RttV,uiV*8,8_8) | fZXTN(uiV*8,64,RssV); }
target/hexagon/macros.h:234:28: note: in definition of macro ‘fZXTN’
  234 | #define fZXTN(N, M, VAL) ((N) ? extract64((VAL), 0, (N)) : 0LL)
      |                            ^
target/hexagon/helper_funcs_generated.h: In function ‘helper_S2_vsplicerb’:
target/hexagon/helper_funcs_generated.h:9677:58: error: ‘*’ in boolean
context, suggest ‘&&’ instead [-Werror=int-in-bool-context]
 9677 |     { RddV = fASHIFTL(RttV,(PuV&7)*8,8_8) |
fZXTN((PuV&7)*8,64,RssV); }
target/hexagon/macros.h:234:28: note: in definition of macro ‘fZXTN’
  234 | #define fZXTN(N, M, VAL) ((N) ? extract64((VAL), 0, (N)) : 0LL)
      |                            ^
cc1: all warnings being treated as errors
make: *** [Makefile.ninja:633:
libqemu-hexagon-linux-user.fa.p/target_hexagon_op_helper.c.o] Error 1

target/hexagon/decode.c:45:31: error: ‘DECODE_REGISTER_V__16’ defined
but not used [-Werror=unused-const-variable=]
   45 |     static const unsigned int DECODE_REGISTER_##NAME[ELEMENTS] = \
      |                               ^~~~~~~~~~~~~~~~
target/hexagon/decode.c:55:1: note: in expansion of macro ‘DEF_REGMAP’
   55 | DEF_REGMAP(V__16, 16, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22,
24, 26, 28, 30)
      | ^~~~~~~~~~
target/hexagon/decode.c:45:31: error: ‘DECODE_REGISTER_V__8’ defined but
not used [-Werror=unused-const-variable=]
   45 |     static const unsigned int DECODE_REGISTER_##NAME[ELEMENTS] = \
      |                               ^~~~~~~~~~~~~~~~
target/hexagon/decode.c:54:1: note: in expansion of macro ‘DEF_REGMAP’
   54 | DEF_REGMAP(V__8,  8,  0, 4, 8, 12, 16, 20, 24, 28)
      | ^~~~~~~~~~
target/hexagon/decode.c:45:31: error: ‘DECODE_REGISTER_R_8’ defined but
not used [-Werror=unused-const-variable=]
   45 |     static const unsigned int DECODE_REGISTER_##NAME[ELEMENTS] = \
      |                               ^~~~~~~~~~~~~~~~
target/hexagon/decode.c:53:1: note: in expansion of macro ‘DEF_REGMAP’
   53 | DEF_REGMAP(R_8,   8,  0, 1, 2, 3, 4, 5, 6, 7)
      | ^~~~~~~~~~
target/hexagon/decode.c:45:31: error: ‘DECODE_REGISTER_R_8S’ defined but
not used [-Werror=unused-const-variable=]
   45 |     static const unsigned int DECODE_REGISTER_##NAME[ELEMENTS] = \
      |                               ^~~~~~~~~~~~~~~~
target/hexagon/decode.c:52:1: note: in expansion of macro ‘DEF_REGMAP’
   52 | DEF_REGMAP(R_8S,  8,  0, 1, 2, 3, 16, 17, 18, 19)
      | ^~~~~~~~~~
target/hexagon/decode.c:45:31: error: ‘DECODE_REGISTER_R_4’ defined but
not used [-Werror=unused-const-variable=]
   45 |     static const unsigned int DECODE_REGISTER_##NAME[ELEMENTS] = \
      |                               ^~~~~~~~~~~~~~~~
target/hexagon/decode.c:51:1: note: in expansion of macro ‘DEF_REGMAP’
   51 | DEF_REGMAP(R_4,   4,  0, 1, 2, 3)
      | ^~~~~~~~~~
target/hexagon/decode.c:45:31: error: ‘DECODE_REGISTER_R__4’ defined but
not used [-Werror=unused-const-variable=]
   45 |     static const unsigned int DECODE_REGISTER_##NAME[ELEMENTS] = \
      |                               ^~~~~~~~~~~~~~~~
target/hexagon/decode.c:50:1: note: in expansion of macro ‘DEF_REGMAP’
   50 | DEF_REGMAP(R__4,  4,  0, 2, 4, 6)
      | ^~~~~~~~~~
cc1: all warnings being treated as errors
make: *** [Makefile.ninja:638:
libqemu-hexagon-linux-user.fa.p/target_hexagon_decode.c.o] Error 1

$ gcc --version
gcc (GCC) 10.2.1 20200723 (Red Hat 10.2.1-1)

Regards,

Phil.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]