- Feb 09, 2024
-
-
-
-
-
-
This fixes the bug where our `TranslationBlock` wouldn't be allocated in the `code_buffer`, since we no longer take that code path.
-
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Useful when `dlopen`ing by reducing the amount of funnctions needed to be `dlsym`d manually. Also makes sure function prototypes are kept in sync between users of libtcg and libtcg. Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
This commits removes a few subprojects from QEMU when libtcg is enabled, with reason to declutter the install directory from non-libtcg-related stuff. Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Adds `llvm-helpers` subdir containing `to_bc.py` which converts all input .c files to .bc using clang, and then llvm-links everything to a single module. Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Commas weren't printed correctly for constants Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
This is not optimal since e.g. repeat use of the same temporary will end up being stored twice. Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Also added destroy function to instruction list Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
This is a big commit as a lot of code has been pasted and adapted from the `tcg/*` files. A new function to dump a `TinyCodeInstruction` was added that is adapted from `tcg_dump_ops`. Everything exposed in `libtcg.h` was requried for our new dump function to replicate the output of `tcg_dump_ops`. Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
We now instead read bytecode from a buffer with a fictional virtual address. Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
These currently have a single `translate` function which sets up QEMU to call `gen_intermediate_code`. Signed-off-by:
Anton Johansson <anjo@rev.ng>
-
which builds the `-user` target as a shared library. Signed-off-by:
Anton Johansson <anjo@rev.ng>
- Jan 29, 2024
-
-
Michael Tokarev authored
Signed-off-by:
Michael Tokarev <mjt@tls.msk.ru>
-
- Jan 27, 2024
-
-
Peter Maydell authored
A typo in the implementation of isar_feature_aa64_tidcp1() means we were checking the field in the wrong ID register, so we might have provided the feature on CPUs that don't have it and not provided it on CPUs that should have it. Correct this bug. Cc: qemu-stable@nongnu.org Fixes: 9cd0c0de "target/arm: Implement FEAT_TIDCP1" Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2120 Signed-off-by:
Peter Maydell <peter.maydell@linaro.org> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Message-id: 20240123160333.958841-1-peter.maydell@linaro.org (cherry picked from commit ee0a2e3c9d2991a11c13ffadb15e4d0add43c257) Signed-off-by:
Michael Tokarev <mjt@tls.msk.ru>
-
Peter Maydell authored
In commit 1b7bc9b5 we changed handle_vec_simd_sqshrn() so that instead of starting with a 0 value and depositing in each new element from the narrowing operation, it instead started with the raw result of the narrowing operation of the first element. This is fine in the vector case, because the deposit operations for the second and subsequent elements will always overwrite any higher bits that might have been in the first element's result value in tcg_rd. However in the scalar case we only go through this loop once. The effect is that for a signed narrowing operation, if the result is negative then we will now return a value where the bits above the first element are incorrectly 1 (because the narrowfn returns a sign-extended result, not one that is truncated to the element size). Fix this by using an extract operation to get exactly the correct bits of the output of the narrowfn for element 1, instead of a plain move. Cc: qemu-stable@nongnu.org Fixes: 1b7bc9b5 ("target/arm: Avoid tcg_const_ptr in handle_vec_simd_sqshrn") Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2089 Signed-off-by:
Peter Maydell <peter.maydell@linaro.org> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Message-id: 20240123153416.877308-1-peter.maydell@linaro.org (cherry picked from commit 6fffc8378562c7fea6290c430b4f653f830a4c1a) Signed-off-by:
Michael Tokarev <mjt@tls.msk.ru>
-
Max Filippov authored
r[id]tlb[01], [iw][id]tlb opcodes use TLB way index passed in a register by the guest. The host uses 3 bits of the index for ITLB indexing and 4 bits for DTLB, but there's only 7 entries in the ITLB array and 10 in the DTLB array, so a malicious guest may trigger out-of-bound access to these arrays. Change split_tlb_entry_spec return type to bool to indicate whether TLB way passed to it is valid. Change get_tlb_entry to return NULL in case invalid TLB way is requested. Add assertion to xtensa_tlb_get_entry that requested TLB way and entry indices are valid. Add checks to the [rwi]tlb helpers that requested TLB way is valid and return 0 or do nothing when it's not. Cc: qemu-stable@nongnu.org Fixes: b67ea0cd ("target-xtensa: implement memory protection options") Signed-off-by:
Max Filippov <jcmvbkbc@gmail.com> Reviewed-by:
Peter Maydell <peter.maydell@linaro.org> Message-id: 20231215120307.545381-1-jcmvbkbc@gmail.com Signed-off-by:
Peter Maydell <peter.maydell@linaro.org> (cherry picked from commit 604927e357c2b292c70826e4ce42574ad126ef32) Signed-off-by:
Michael Tokarev <mjt@tls.msk.ru>
-
- Jan 26, 2024
-
-
Daniel P. Berrangé authored
On a loaded system with --enable-debug, this test can take longer than 5 minutes. Raising the timeout to 6 minutes gives greater headroom for such situations. Signed-off-by:
Daniel P. Berrangé <berrange@redhat.com> [thuth: Increase the timeout to 6 minutes for very loaded systems] Signed-off-by:
Thomas Huth <thuth@redhat.com> Message-Id: <20231215070357.10888-11-thuth@redhat.com> Signed-off-by:
Alex Bennée <alex.bennee@linaro.org> (cherry picked from commit e8a12fe31f776c60fec993513cd1b1e66c2b8e29) Signed-off-by:
Michael Tokarev <mjt@tls.msk.ru> (Mjt: context fixup in tests/qtest/meson.build)
-