* [Qemu-devel] [PULL 00/40] target/xtensa queue
@ 2019-02-25 20:32 Max Filippov
2019-02-28 10:27 ` Peter Maydell
0 siblings, 1 reply; 3+ messages in thread
From: Max Filippov @ 2019-02-25 20:32 UTC (permalink / raw)
To: qemu-devel; +Cc: Peter Maydell, Max Filippov
Hi Peter,
please pull the following batch of target/xtensa updates:
The following changes since commit 1c3d45df5e94042d5fb2bb31416072563ab30e49:
Merge remote-tracking branch 'remotes/ericb/tags/pull-nbd-2019-02-04' into staging (2019-02-05 12:46:18 +0000)
are available in the git repository at:
git://github.com/OSLL/qemu-xtensa.git tags/20190225-xtensa
for you to fetch changes up to 116f9089402081231ebc6d0012e4e029f21f63af:
tests/tcg/xtensa: add FPU2000 coprocessor tests (2019-02-18 22:09:10 -0800)
----------------------------------------------------------------
target/xtensa: FLIX support, various fixes and test improvements
- add FLIX (flexible length instructions extension) support;
- make testsuite runnable on wider range of xtensa cores;
- add floating point opcode tests;
- don't add duplicate 'static' in import_core.sh script;
- fix undefined opcodes detection in test_mmuhifi_c3 overlay.
----------------------------------------------------------------
Max Filippov (40):
target/xtensa/import_core.sh: don't add duplicate 'static'
target/xtensa: don't specify windowed registers manually
target/xtensa: get rid of gen_callw[i]
target/xtensa: fixup test_mmuhifi_c3 overlay
target/xtensa: move xtensa_finalize_config to xtensa_core_class_init
target/xtensa: don't require opcode table sorting
target/xtensa: allow multiple names for single opcode
target/xtensa: implement wide branches and loops
target/xtensa: sort FLIX instruction opcodes
target/xtensa: add generic instruction post-processing
target/xtensa: move WINDOW_BASE SR update to postprocessing
target/xtensa: only rotate window in the retw helper
target/xtensa: reorganize register handling in translators
target/xtensa: reorganize access to MAC16 registers
target/xtensa: reorganize access to boolean registers
target/xtensa: break circular register dependencies
target/xtensa: prioritize load/store in FLIX bundles
target/xtensa: implement PREFCTL SR
tests/tcg/xtensa: indicate failed tests
tests/tcg/xtensa: support configurations w/o vecbase
tests/tcg/xtensa: support configs with LITBASE
tests/tcg/xtensa: don't use optional opcodes in generic code
tests/tcg/xtensa: fix endianness issues in test_b
tests/tcg/xtensa: enable boolean tests
tests/tcg/xtensa: conditionalize debug option tests
tests/tcg/xtensa: conditionalize cache option tests
tests/tcg/xtensa: add straightforward conditionals
tests/tcg/xtensa: conditionalize interrupt tests
tests/tcg/xtensa: conditionalize timer/CCOUNT tests
tests/tcg/xtensa: conditionalize and expand SR tests
tests/tcg/xtensa: fix SR tests for big endian configs
tests/tcg/xtensa: conditionalize and fix s32c1i tests
tests/tcg/xtensa: conditionalize windowed register tests
tests/tcg/xtensa: conditionalize MMU-related tests
tests/tcg/xtensa: add test for FLIX
tests/tcg/xtensa: add LSCI/LSCX group tests
tests/tcg/xtensa: add FP0 group arithmetic tests
tests/tcg/xtensa: add FP0 group conversion tests
tests/tcg/xtensa: add FP1 group tests
tests/tcg/xtensa: add FPU2000 coprocessor tests
.../core-test_mmuhifi_c3/xtensa-modules.inc.c | 1322 ++++++------
target/xtensa/cpu.h | 40 +-
target/xtensa/helper.c | 94 +-
target/xtensa/helper.h | 5 +-
target/xtensa/import_core.sh | 2 +-
target/xtensa/overlay_tool.h | 1 -
target/xtensa/translate.c | 2113 ++++++++++----------
target/xtensa/win_helper.c | 22 +-
tests/tcg/xtensa/Makefile | 13 +-
tests/tcg/xtensa/linker.ld.S | 67 +-
tests/tcg/xtensa/macros.inc | 41 +-
tests/tcg/xtensa/test_b.S | 40 +-
tests/tcg/xtensa/test_boolean.S | 4 +
tests/tcg/xtensa/test_break.S | 27 +-
tests/tcg/xtensa/test_cache.S | 62 +-
tests/tcg/xtensa/test_clamps.S | 4 +
tests/tcg/xtensa/test_flix.S | 60 +
tests/tcg/xtensa/test_fp0_arith.S | 173 ++
tests/tcg/xtensa/test_fp0_conv.S | 304 +++
tests/tcg/xtensa/test_fp1.S | 141 ++
tests/tcg/xtensa/test_fp_cpenable.S | 27 +
tests/tcg/xtensa/test_interrupt.S | 88 +-
tests/tcg/xtensa/test_loop.S | 4 +
tests/tcg/xtensa/test_lsc.S | 122 ++
tests/tcg/xtensa/test_mac16.S | 4 +
tests/tcg/xtensa/test_max.S | 4 +
tests/tcg/xtensa/test_min.S | 4 +
tests/tcg/xtensa/test_mmu.S | 4 +
tests/tcg/xtensa/test_mul16.S | 4 +
tests/tcg/xtensa/test_mul32.S | 4 +
tests/tcg/xtensa/test_nsa.S | 4 +
tests/tcg/xtensa/test_phys_mem.S | 4 +
tests/tcg/xtensa/test_quo.S | 4 +
tests/tcg/xtensa/test_rem.S | 4 +
tests/tcg/xtensa/test_rst0.S | 8 +
tests/tcg/xtensa/test_s32c1i.S | 12 +
tests/tcg/xtensa/test_sext.S | 4 +
tests/tcg/xtensa/test_sr.S | 153 +-
tests/tcg/xtensa/test_timer.S | 48 +-
tests/tcg/xtensa/test_windowed.S | 32 +-
tests/tcg/xtensa/vectors.S | 14 +-
41 files changed, 3250 insertions(+), 1837 deletions(-)
create mode 100644 tests/tcg/xtensa/test_flix.S
create mode 100644 tests/tcg/xtensa/test_fp0_arith.S
create mode 100644 tests/tcg/xtensa/test_fp0_conv.S
create mode 100644 tests/tcg/xtensa/test_fp1.S
create mode 100644 tests/tcg/xtensa/test_fp_cpenable.S
create mode 100644 tests/tcg/xtensa/test_lsc.S
Thanks.
-- Max
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] [PULL 00/40] target/xtensa queue
2019-02-25 20:32 [Qemu-devel] [PULL 00/40] target/xtensa queue Max Filippov
@ 2019-02-28 10:27 ` Peter Maydell
2019-02-28 12:58 ` Max Filippov
0 siblings, 1 reply; 3+ messages in thread
From: Peter Maydell @ 2019-02-28 10:27 UTC (permalink / raw)
To: Max Filippov; +Cc: QEMU Developers
On Mon, 25 Feb 2019 at 20:32, Max Filippov <jcmvbkbc@gmail.com> wrote:
>
> Hi Peter,
>
> please pull the following batch of target/xtensa updates:
>
> The following changes since commit 1c3d45df5e94042d5fb2bb31416072563ab30e49:
>
> Merge remote-tracking branch 'remotes/ericb/tags/pull-nbd-2019-02-04' into staging (2019-02-05 12:46:18 +0000)
>
> are available in the git repository at:
>
> git://github.com/OSLL/qemu-xtensa.git tags/20190225-xtensa
>
> for you to fetch changes up to 116f9089402081231ebc6d0012e4e029f21f63af:
>
> tests/tcg/xtensa: add FPU2000 coprocessor tests (2019-02-18 22:09:10 -0800)
>
> ----------------------------------------------------------------
> target/xtensa: FLIX support, various fixes and test improvements
>
> - add FLIX (flexible length instructions extension) support;
> - make testsuite runnable on wider range of xtensa cores;
> - add floating point opcode tests;
> - don't add duplicate 'static' in import_core.sh script;
> - fix undefined opcodes detection in test_mmuhifi_c3 overlay.
>
Hi -- I'm afraid this fails to build on some clang compilers:
/Users/pm215/src/qemu-for-merges/target/xtensa/translate.c:967:14:
error: result of comparison of constant 256 with expression of type
'enum resource_type' is always true
[-Werror,-Wtautological-constant-out-of-range-compare]
assert(r < 256 && g < 256 && n < 65536);
~ ^ ~~~
/usr/include/assert.h:93:25: note: expanded from macro 'assert'
(__builtin_expect(!(e), 0) ? __assert_rtn(__func__, __FILE__,
__LINE__, #e) : (void)0)
^
Here r is of type 'enum resource_type', so the compiler
is allowed to pick any type to represent it that will fit all
the values in the enum. In this case the compiler has picked
a char type. Asserting that r is either RES_REGFILE or RES_STATE
would probably work better.
thanks
-- PMM
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] [PULL 00/40] target/xtensa queue
2019-02-28 10:27 ` Peter Maydell
@ 2019-02-28 12:58 ` Max Filippov
0 siblings, 0 replies; 3+ messages in thread
From: Max Filippov @ 2019-02-28 12:58 UTC (permalink / raw)
To: Peter Maydell; +Cc: QEMU Developers
Hi Peter,
On Thu, Feb 28, 2019 at 2:27 AM Peter Maydell <peter.maydell@linaro.org> wrote:
> On Mon, 25 Feb 2019 at 20:32, Max Filippov <jcmvbkbc@gmail.com> wrote:
> > please pull the following batch of target/xtensa updates:
>
> Hi -- I'm afraid this fails to build on some clang compilers:
>
> /Users/pm215/src/qemu-for-merges/target/xtensa/translate.c:967:14:
> error: result of comparison of constant 256 with expression of type
> 'enum resource_type' is always true
> [-Werror,-Wtautological-constant-out-of-range-compare]
> assert(r < 256 && g < 256 && n < 65536);
> ~ ^ ~~~
Thanks. I've fixed it up with the following:
diff --git a/target/xtensa/translate.c b/target/xtensa/translate.c
index 616ed8f57972..bda4e9469b86 100644
--- a/target/xtensa/translate.c
+++ b/target/xtensa/translate.c
@@ -865,11 +865,12 @@ struct slot_prop {
enum resource_type {
RES_REGFILE,
RES_STATE,
+ RES_MAX,
};
static uint32_t encode_resource(enum resource_type r, unsigned g, unsigned n)
{
- assert(r < 256 && g < 256 && n < 65536);
+ assert(r < RES_MAX && g < 256 && n < 65536);
return (r << 24) | (g << 16) | n;
}
and pushed the updated tag 20190228-xtensa.
--
Thanks.
-- Max
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2019-02-28 12:58 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-25 20:32 [Qemu-devel] [PULL 00/40] target/xtensa queue Max Filippov
2019-02-28 10:27 ` Peter Maydell
2019-02-28 12:58 ` Max Filippov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).