Re: [Qemu-devel] [PATCH 1/1] tcg/tci: Remove unnecessary TODO() for INDEX_op_bswap16_i64
On 07/12/2017 03:49 AM, Jaroslaw Pelczar wrote: @@ -1046,7 +1046,6 @@ uintptr_t tcg_qemu_tb_exec(CPUArchState *env, uint8_t *tb_ptr) break; #if TCG_TARGET_HAS_bswap16_i64 case INDEX_op_bswap16_i64: -TODO(); t0 = *tb_ptr++; t1 = tci_read_r16(_ptr); tci_write_reg64(t0, bswap16(t1)); An identical patch has already been submitted https://patchwork.ozlabs.org/patch/774278/ and it is (now) waiting in the tcg-next queue. r~
Re: [Qemu-devel] [PATCH 1/1] tcg/tci: Remove unnecessary TODO() for INDEX_op_bswap16_i64
Hi Jaroslaw, Thank for reporting this, however this fix has been reviewed: http://patchwork.ozlabs.org/patch/781982/ On 07/12/2017 10:52 AM, Jaroslaw Pelczar wrote: Running Ubuntu with systemd on AArch64 Cortex-A53 and qemu is compiled with ./configure --target-list=aarch64-softmmu --enable-tcg-interpreter System gives the following log: Welcome to Ubuntu 16.04.1 LTS! systemd[1]: Set hostname to . TODO (...)/qemu/tcg/tci.c:1049: tcg_qemu_tb_exec() (...)/qemu/tcg/tci.c:1049: tcg fatal error Aborted (core dumped) After investigation it turns out that TCG generates bswap16_i64 opcode, which looks fine in the implementation. Indeed while correctly implemented, "that code part was simply never executed, and [Stefan] only removed the TODO() statements from tested code." as explained Stefan. Signed-off-by: Jaroslaw PelczarI can add your Signed-off-by there if you mind --- tcg/tci.c | 1 - 1 file changed, 1 deletion(-) diff --git a/tcg/tci.c b/tcg/tci.c index 4bdc645..f39bfb9 100644 --- a/tcg/tci.c +++ b/tcg/tci.c @@ -1046,7 +1046,6 @@ uintptr_t tcg_qemu_tb_exec(CPUArchState *env, uint8_t *tb_ptr) break; #if TCG_TARGET_HAS_bswap16_i64 case INDEX_op_bswap16_i64: -TODO(); t0 = *tb_ptr++; t1 = tci_read_r16(_ptr); tci_write_reg64(t0, bswap16(t1)); Regards, Phil.
[Qemu-devel] [PATCH 1/1] tcg/tci: Remove unnecessary TODO() for INDEX_op_bswap16_i64
Running Ubuntu with systemd on AArch64 Cortex-A53 and qemu is compiled with ./configure --target-list=aarch64-softmmu --enable-tcg-interpreter System gives the following log: Welcome to Ubuntu 16.04.1 LTS! systemd[1]: Set hostname to . TODO (...)/qemu/tcg/tci.c:1049: tcg_qemu_tb_exec() (...)/qemu/tcg/tci.c:1049: tcg fatal error Aborted (core dumped) After investigation it turns out that TCG generates bswap16_i64 opcode, which looks fine in the implementation. Signed-off-by: Jaroslaw Pelczar--- tcg/tci.c | 1 - 1 file changed, 1 deletion(-) diff --git a/tcg/tci.c b/tcg/tci.c index 4bdc645..f39bfb9 100644 --- a/tcg/tci.c +++ b/tcg/tci.c @@ -1046,7 +1046,6 @@ uintptr_t tcg_qemu_tb_exec(CPUArchState *env, uint8_t *tb_ptr) break; #if TCG_TARGET_HAS_bswap16_i64 case INDEX_op_bswap16_i64: -TODO(); t0 = *tb_ptr++; t1 = tci_read_r16(_ptr); tci_write_reg64(t0, bswap16(t1)); -- 2.7.4
[Qemu-devel] [PATCH 1/1] tcg/tci: Remove unnecessary TODO() for INDEX_op_bswap16_i64
Running Ubuntu with systemd on AArch64 Cortex-A53 and qemu is compiled with ./configure --target-list=aarch64-softmmu --enable-tcg-interpreter System gives the following log: Welcome to Ubuntu 16.04.1 LTS! systemd[1]: Set hostname to . TODO (...)/qemu/tcg/tci.c:1049: tcg_qemu_tb_exec() (...)/qemu/tcg/tci.c:1049: tcg fatal error Aborted (core dumped) After investigation it turns out that TCG generates bswap16_i64 opcode, which looks fine in the implementation. Signed-off-by: Jaroslaw Pelczar--- tcg/tci.c | 1 - 1 file changed, 1 deletion(-) diff --git a/tcg/tci.c b/tcg/tci.c index 4bdc645..f39bfb9 100644 --- a/tcg/tci.c +++ b/tcg/tci.c @@ -1046,7 +1046,6 @@ uintptr_t tcg_qemu_tb_exec(CPUArchState *env, uint8_t *tb_ptr) break; #if TCG_TARGET_HAS_bswap16_i64 case INDEX_op_bswap16_i64: -TODO(); t0 = *tb_ptr++; t1 = tci_read_r16(_ptr); tci_write_reg64(t0, bswap16(t1)); -- 2.7.4