From d5c097bcda44e237ecabcdba9b3dca2348289138 Mon Sep 17 00:00:00 2001 From: Vladimir Marko Date: Fri, 13 Oct 2023 10:28:36 +0000 Subject: riscv64: Implement `CriticalNativeAbiFixupRiscv64`. And pass integral stack args sign-extended to 64 bits for direct @CriticalNative calls. Enable direct @CriticalNative call codegen unconditionally and also enable `HClinitCheck` codegen and extend the 178-app-image-native-method run-test to properly test these use cases. Test: # Edit `run-test` to disable checker, then testrunner.py --target --64 --ndebug --optimizing # Ignore 6 pre-existing failures (down from 7). Bug: 283082089 Change-Id: Ia514c62006c7079b04182cc39e413eb2deb089c1 --- compiler/optimizing/code_generator.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'compiler/optimizing/code_generator.h') diff --git a/compiler/optimizing/code_generator.h b/compiler/optimizing/code_generator.h index cd44fb3fa7..7e46966247 100644 --- a/compiler/optimizing/code_generator.h +++ b/compiler/optimizing/code_generator.h @@ -598,7 +598,7 @@ class CodeGenerator : public DeletableArenaObject { if (kIsDebugBuild) { uint32_t shorty_len; const char* shorty = GetCriticalNativeShorty(invoke, &shorty_len); - DCHECK_EQ(GetCriticalNativeDirectCallFrameSize(shorty, shorty_len), out_frame_size); + CHECK_EQ(GetCriticalNativeDirectCallFrameSize(shorty, shorty_len), out_frame_size); } if (out_frame_size != 0u) { FinishCriticalNativeFrameSetup(out_frame_size, ¶llel_move); -- cgit v1.2.3-59-g8ed1b