Age | Commit message (Collapse) | Author |
|
|
|
Test: m berberis_all
Change-Id: Icee6b88d4c5a794c209a0f974be5d56cea951857
|
|
|
|
Test: m berberis_all
Change-Id: I29fb27ab1374376bbe915674e4c6bf950e404a96
|
|
Test: m inline_asm_tests_riscv64.native_bridge, program_runner
inline_asm_tests
Change-Id: Id50653eebeeeae8a309491e188c6a98b8ca6d613
|
|
Test: m inline_asm_tests_riscv64.native_bridge, program_runner
inline_asm_tests
Change-Id: Id6bf2b58c53bdcaf4a1b2357977f831eb3162470
|
|
Test: m inline_asm_tests_riscv64.native_bridge, program_runner
inline_asm_tests
Change-Id: Ibd4fa987128d090751826ce2e26bd28848550ecd
|
|
into main
|
|
Test: m inline_asm_tests_riscv64.native_bridge, progam_runner
inline_asm_tests_riscv64
Change-Id: Id24987ad7680eab7bb19936037f82af105f4e014
|
|
Note that I had to use t0 instead of x1 since x1 is ra. It was being
overwritten by the jalr we use to call the test insns.
Test: m inline_asm_tests_riscv64.native_bridge, progam_runner
inline_asm_tests_riscv64
Change-Id: Ia60544ce2fad426e04115354f750da658151fec3
|
|
Test: m inline_asm_tests_riscv64.native_bridge, program_runner
inline_asm_tests
Change-Id: I101e3791b285ab7f0e9543fe5fa1ebaf0077354d
|
|
Test: m berberis_all
Change-Id: Iddb62441aef572523c62a6c98e3ffd26a288e376
|
|
|
|
Test: m inline_asm_tests_riscv64.native_bridge, program_runner
inline_asm_tests_riscv64
Change-Id: I6eeb5ede7684ef934b5227b6068ec99537e1045d
|
|
Test: tree-hugger
Bug: 342143077
Change-Id: I41991dda02274aa0137981ea2813d6aa468525fc
|
|
Test: tree-hugger
Bug: 232598137
Change-Id: If0a9b0e3ac91d1c3ba3f9b715bdc3cf9b30edc14
|
|
|
|
|
|
Test: m berberis_all
Change-Id: If682d92db51ca7c440930c30651b5bf6a8ee35a6
|
|
Uses RunInstruction helper to collapse repeated boilerplate used in most
test cases for riscv64 instruction tests. The reduced verbosity should
improve readability without sacrificing semantic clarity.
Bug: None
Test: berberis_host_tests
Change-Id: Ie090d1a20008adacd65a2ea0defd890df7028163
|
|
According to the RISC-V spec v2.2:
The sign-injection instructions (FSGNJ, FSGNJN, FSGNJX) do not
canonicalize NaNs; they manipulate the underlying bit patterns directly.
Semantics player previously canonicalized these instructions, resulting
in incorrect NaN negation.
Adds new unit tests for Fabs.{s,d} and Fneg.{s,d} negation with NaNs.
These insns are variants of Fsgnjx.{s,d} and Fsgnjn.{s,d}, respectively.
Bug: 330396676
Test: berberis_host_tests
Test: bionic unit tests for *scanf_inf_nan
Change-Id: Ifcba94d0ac1a348fe52bdd776d49aa0ff5cdc45e
|
|
|
|
Splits out specific categories of instructions for modifying the fflags
portion of the fcsr register. Enables easier detection of
instruction-specific errors across the various translation modes.
Tested by locally reverting aosp/3090389 and confirming that only the
LiteTranslator instance of the FFlagsClearBits tests failed.
Bug: 330396676
Test: berberis_host_tests
Change-Id: Ie2ea461a1e4b584f1b88f0459f945668ada01f76
|
|
|
|
Test: berberis_run_host_tests
Bug: 301577077
Change-Id: I02b43f75a7e043de5e224bce22d96c643878b55d
|
|
|
|
* changes:
inline_asm_tests: Use EXPECT_EQ for equality check
interpreter/riscv64: Implement vfsqrt.v
inline_asm_tests: Add setup for running single arg
inline_asm_tests: Expand SIMD128 repr support
[interpreter/riscv64] Canonicalize vector float results
|
|
Rather than EXPECT_TRUE(A == B), the former will log the values of the
args to aid in debugging.
Bug: 232598137
Test: berberis_program_runner_riscv64 inline_asm_test_riscv64
Change-Id: I59ab0aa7f53238485ee2d83e0764066fe9031801
|
|
Test: m berberis_all berberis_run_host_tests, berberis_program_runner_riscv64 inline_asm_tests_riscv64
Change-Id: I43b669b0a6493bb5ce54896d4f5b2b538a45adb2
|
|
Adds TestVectorInstruction and RunOneArgOneRes functions.
Test: berberis_program_runner_riscv64 inline_asm_tests_riscv64
Change-Id: I004a1367924d02ea89d5bf027c10436224f5824c
|
|
Add constructors for groupings of uint8, uint16, and uint32, also
add masking data and helpers for those sizes.
Test: berberis_program_runner_riscv64 inline_asm_tests_riscv64
Change-Id: Ia207f512d15237d95bbfa142ef9f331adac9cf15
|
|
Test: m berberis_all berberis_run_host_tests
Change-Id: I844be7dfa836a346ecb449e234dcade4e30a4862
|
|
|
|
|
|
|
|
Returns the temporary result register rather than the input arg register
for the non-immediate variant of UpdateCsr. The immediate version of
this function already returns the result register correctly.
Fixes the following previously failing Bionic unit tests:
- fenv.feclearexcept_fetestexcept
- fenv.feraiseexcept
- fenv.fegetenv_fesetenv
- fenv.feholdexcept_feupdateenv
- fenv.fedisableexcept_fegetexcept
Bug: 330396676
Test: Bionic fenv.fegetenv_fesetenv
Test: berberis_host_tests
Change-Id: I7645cf123bcb44d53b2e3325140a44eb7d4f9839
|
|
The substr method doesn't accept an allocator parameter, but the
basic_string constructor does. Previously, libc++ forwarded the
base string's allocator, but this was non-conforming.
Test: m libberberis_kernel_api_common
Test: cd frameworks/libs/binary_translation; mm
Bug: 333165689
Bug: https://llvm.org/PR57190
Change-Id: I24fe93a5ad7bf1568decaf6cf5c98f6b1c5d8ed4
|
|
Test: m berberis_all
Change-Id: Iac623304a5a258ab0c6a58a5774f686b8545a290
|
|
|
|
The RISC-V LP64D calling convention specifies that floating-point
arguments are first passed in the floating-point argument registers
(fa0..7), then in the general-purpose argument registers (a0..7), then
on the stack. Our implementation was spilling directly from the FP
registers onto the stack, skipping the integer registers. This caused
problems for functions passing more than 8 FP parameters but fewer than
8 integer parameters.
Test: berberis_run_host_tests, CtsJniTestCases
Bug: 330396865
Change-Id: Ia52839d07f5f1589bf2df9427e77827ef59d7ef1
|
|
Test: m berberis_all
Change-Id: I26e063c65dd4a8ec83a527ff900c477a0b8cffdf
|
|
Test: builds, treehugger
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:f8025548ac776ebaa91ba68fe088b217fcbd379d)
Merged-In: I8af59af5f9681e76e8adfbe7d1115c6614fb07e7
Change-Id: I8af59af5f9681e76e8adfbe7d1115c6614fb07e7
|
|
Needed to and with the value of the constant and not its
memory address.
Test: m berberis_all berberis_run_host_tests, inline asm tests
Change-Id: I6acc10da85213e7b01b30cd4210cc71e3874fdad
|
|
|
|
There are 3 issues
1. Do not use malloc. Some tests read /proc/self/maps under malloc_disable().
Use Arena/mmap based data structures instead and define helper functions that
support custom allocators.
2. Do not add newline at the end. Kernel doesn't do that and test's parser
doesn't allow empty lines.
3. Gracefully handle invalid pointers passed as 'path' to OpenatForGuest. This
is done by calling stat() on it.
Test: CtsBionicTestCases
Test: ndk_program_tests --gtest_filter=*ProcSelf*
Bug: 338211718
Change-Id: I38314dbd8686875f917b578b56210b476a13e6d0
|
|
|
|
Test: inline_asm_tests
Bug: 301577077
Change-Id: Iaa5c6eb96980d15c83316ae07e8acee1c4b1e52f
|
|
Test: inline_asm_tests
Bug: 301577077
Change-Id: I7d4e561279278b23c1ba7a69a301c1fd15e71399
|
|
It's a wrapper around __uint128_t which can be constructed
from a pair of uint64_t literals.
Test: inline_asm_tests
Bug: 301577077
Change-Id: Id7eeedeacfd6abd1f1136367c0a7436d35750598
|
|
Agnostic tail handling can be legally implemented as undisturbed.
Add an option which can be used for devices employing this approach.
Since passing command line arguments to a gtest is non-trivial
we use env variable.
Test: inline_asm_tests
Bug: 301577077
Change-Id: If250aa012d532086cb9b395dd73cdfefc156bea2
|