From 66def3a7024d8c860c047a9b1681085c591d46ca Mon Sep 17 00:00:00 2001 From: Dong-Heon Jung Date: Sat, 10 Jun 2023 23:06:10 +0900 Subject: [PATCH] Remove unused methods in cgencpu.h (#87357) - `isJump` and `isBackToBackJump` --- src/coreclr/vm/amd64/cgencpu.h | 7 ------- src/coreclr/vm/arm/cgencpu.h | 18 ------------------ src/coreclr/vm/arm64/cgencpu.h | 18 ------------------ src/coreclr/vm/i386/cgencpu.h | 15 --------------- src/coreclr/vm/loongarch64/cgencpu.h | 20 +------------------- src/coreclr/vm/riscv64/cgencpu.h | 20 +------------------- 6 files changed, 2 insertions(+), 96 deletions(-) diff --git a/src/coreclr/vm/amd64/cgencpu.h b/src/coreclr/vm/amd64/cgencpu.h index 86e8d0f37084b..fbd0351dd1c73 100644 --- a/src/coreclr/vm/amd64/cgencpu.h +++ b/src/coreclr/vm/amd64/cgencpu.h @@ -430,13 +430,6 @@ inline void emitBackToBackJump(LPBYTE pBufferRX, LPBYTE pBufferRW, LPVOID target emitJump(pBufferRX, pBufferRW, target); } -inline BOOL isBackToBackJump(PCODE pCode) -{ - WRAPPER_NO_CONTRACT; - SUPPORTS_DAC; - return isJumpRel32(pCode) || isJumpRel64(pCode); -} - inline PCODE decodeBackToBackJump(PCODE pCode) { WRAPPER_NO_CONTRACT; diff --git a/src/coreclr/vm/arm/cgencpu.h b/src/coreclr/vm/arm/cgencpu.h index aeb620718fe5c..d31700e3477a4 100644 --- a/src/coreclr/vm/arm/cgencpu.h +++ b/src/coreclr/vm/arm/cgencpu.h @@ -302,24 +302,6 @@ inline PCODE decodeJump(PCODE pCode) // That is why we have these two wrapper functions that call emitJump and decodeJump // -//------------------------------------------------------------------------ -inline BOOL isJump(PCODE pCode) -{ - LIMITED_METHOD_DAC_CONTRACT; - - TADDR pInstr = PCODEToPINSTR(pCode); - - return *dac_cast(pInstr) == 0xf000f8df; -} - -//------------------------------------------------------------------------ -inline BOOL isBackToBackJump(PCODE pBuffer) -{ - WRAPPER_NO_CONTRACT; - SUPPORTS_DAC; - return isJump(pBuffer); -} - //------------------------------------------------------------------------ inline void emitBackToBackJump(LPBYTE pBufferRX, LPBYTE pBufferRW, LPVOID target) { diff --git a/src/coreclr/vm/arm64/cgencpu.h b/src/coreclr/vm/arm64/cgencpu.h index ea29ec2bdce02..4350390843e57 100644 --- a/src/coreclr/vm/arm64/cgencpu.h +++ b/src/coreclr/vm/arm64/cgencpu.h @@ -317,24 +317,6 @@ inline PCODE decodeJump(PCODE pCode) return *dac_cast(pInstr + 2*sizeof(DWORD)); } -//------------------------------------------------------------------------ -inline BOOL isJump(PCODE pCode) -{ - LIMITED_METHOD_DAC_CONTRACT; - - TADDR pInstr = PCODEToPINSTR(pCode); - - return *dac_cast(pInstr) == 0x58000050; -} - -//------------------------------------------------------------------------ -inline BOOL isBackToBackJump(PCODE pBuffer) -{ - WRAPPER_NO_CONTRACT; - SUPPORTS_DAC; - return isJump(pBuffer); -} - //------------------------------------------------------------------------ inline void emitBackToBackJump(LPBYTE pBufferRX, LPBYTE pBufferRW, LPVOID target) { diff --git a/src/coreclr/vm/i386/cgencpu.h b/src/coreclr/vm/i386/cgencpu.h index 8c58ff5669b42..8a57e721b8f1c 100644 --- a/src/coreclr/vm/i386/cgencpu.h +++ b/src/coreclr/vm/i386/cgencpu.h @@ -371,13 +371,6 @@ inline void emitJumpInd(LPBYTE pBuffer, LPVOID target) *((LPVOID*)(2+pBuffer)) = target; } -//------------------------------------------------------------------------ -inline PCODE isJump(PCODE pCode) -{ - LIMITED_METHOD_DAC_CONTRACT; - return *PTR_BYTE(pCode) == X86_INSTR_JMP_REL32; -} - //------------------------------------------------------------------------ // Given the same pBuffer that was used by emitJump this method // decodes the instructions and returns the jump target @@ -402,14 +395,6 @@ inline void emitBackToBackJump(LPBYTE pBufferRX, LPBYTE pBufferRW, LPVOID target emitJump(pBufferRX, pBufferRW, target); } -//------------------------------------------------------------------------ -inline PCODE isBackToBackJump(PCODE pBuffer) -{ - WRAPPER_NO_CONTRACT; - SUPPORTS_DAC; - return isJump(pBuffer); -} - //------------------------------------------------------------------------ inline PCODE decodeBackToBackJump(PCODE pBuffer) { diff --git a/src/coreclr/vm/loongarch64/cgencpu.h b/src/coreclr/vm/loongarch64/cgencpu.h index e6ff56919411d..6a11a3a57b756 100644 --- a/src/coreclr/vm/loongarch64/cgencpu.h +++ b/src/coreclr/vm/loongarch64/cgencpu.h @@ -248,7 +248,7 @@ inline void emitJump(LPBYTE pBufferRX, LPBYTE pBufferRW, LPVOID target) pCode[0] = 0x18000095; //pcaddi $r21,4 pCode[1] = 0x28c002b5; //ld.d $r21,$r21,0 pCode[2] = 0x4c0002a0; //jirl $r0,$r21,0 - pCode[3] = 0x03400000; //padding nop. Also used for isJump. + pCode[3] = 0x03400000; //padding nop. // Ensure that the updated instructions get updated in the I-Cache ClrFlushInstructionCache(pBufferRX, 16); @@ -269,24 +269,6 @@ inline PCODE decodeJump(PCODE pCode) return *dac_cast(pInstr + 16); } -//------------------------------------------------------------------------ -inline BOOL isJump(PCODE pCode) -{ - LIMITED_METHOD_DAC_CONTRACT; - - TADDR pInstr = PCODEToPINSTR(pCode); - - return *dac_cast(pInstr+12) == 0x03400000; //nop -} - -//------------------------------------------------------------------------ -inline BOOL isBackToBackJump(PCODE pBuffer) -{ - WRAPPER_NO_CONTRACT; - SUPPORTS_DAC; - return isJump(pBuffer); -} - //------------------------------------------------------------------------ inline void emitBackToBackJump(LPBYTE pBufferRX, LPBYTE pBufferRW, LPVOID target) { diff --git a/src/coreclr/vm/riscv64/cgencpu.h b/src/coreclr/vm/riscv64/cgencpu.h index 23ab1ced88f02..d665103e18d65 100644 --- a/src/coreclr/vm/riscv64/cgencpu.h +++ b/src/coreclr/vm/riscv64/cgencpu.h @@ -246,7 +246,7 @@ inline void emitJump(LPBYTE pBufferRX, LPBYTE pBufferRW, LPVOID target) pCode[0] = 0x00000097; // auipc ra, 0 pCode[1] = 0x0100b083; // ld ra, 16(ra) pCode[2] = 0x00008067; // jalr x0, ra, 0 - pCode[3] = 0x00000013; // padding nop. Also used for isJump. + pCode[3] = 0x00000013; // padding nop. // Ensure that the updated instructions get updated in the I-Cache ClrFlushInstructionCache(pBufferRX, 16); @@ -266,24 +266,6 @@ inline PCODE decodeJump(PCODE pCode) return *dac_cast(pInstr + 2*sizeof(DWORD)); } -//------------------------------------------------------------------------ -inline BOOL isJump(PCODE pCode) -{ - LIMITED_METHOD_DAC_CONTRACT; - - TADDR pInstr = PCODEToPINSTR(pCode); - - return *dac_cast(pInstr) == 0x58000050; -} - -//------------------------------------------------------------------------ -inline BOOL isBackToBackJump(PCODE pBuffer) -{ - WRAPPER_NO_CONTRACT; - SUPPORTS_DAC; - return isJump(pBuffer); -} - //------------------------------------------------------------------------ inline void emitBackToBackJump(LPBYTE pBufferRX, LPBYTE pBufferRW, LPVOID target) {