From b078859a1092086a80952e0ed8401788fb9e5a0e Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Fri, 29 Mar 2024 12:37:26 -0400 Subject: [PATCH] InstCountCI: Update Signed-off-by: Alyssa Rosenzweig --- .../FlagM/HotBlocks_32Bit.json | 20 +++++++--- .../FlagM/SecondaryGroup.json | 40 +++++++++++++------ .../InstructionCountCI/SecondaryGroup.json | 40 +++++++++++++------ 3 files changed, 70 insertions(+), 30 deletions(-) diff --git a/unittests/InstructionCountCI/FlagM/HotBlocks_32Bit.json b/unittests/InstructionCountCI/FlagM/HotBlocks_32Bit.json index e85848d4ef..38b8be7f2b 100644 --- a/unittests/InstructionCountCI/FlagM/HotBlocks_32Bit.json +++ b/unittests/InstructionCountCI/FlagM/HotBlocks_32Bit.json @@ -80,7 +80,7 @@ ] }, "dxvk hotblock from MGRR": { - "ExpectedInstructionCount": 42, + "ExpectedInstructionCount": 50, "Comment": [ "Hottest block in Metal Gear Rising: Revengeance render thread" ], @@ -129,11 +129,19 @@ "mov w24, w21", "mov w25, w5", "mrs x21, nzcv", - "mov w2, w22", - "mov w3, w23", - "caspal w2, w3, w24, w25, [x20]", - "mov w24, w2", - "mov w25, w3", + "ldaxp w1, w2, [x20]", + "eor w0, w1, w22", + "eor w3, w2, w23", + "orr w0, w0, w3", + "cbnz w0, #+0x18", + "stlxp w1, w24, w25, [x20]", + "cbnz w1, #-0x18", + "mov w24, w22", + "mov w25, w23", + "b #+0x10", + "mov w24, w1", + "mov w25, w2", + "clrex", "mov w20, w24", "mov w12, w25", "cmp x24, x22", diff --git a/unittests/InstructionCountCI/FlagM/SecondaryGroup.json b/unittests/InstructionCountCI/FlagM/SecondaryGroup.json index 6d1e2e9639..9b1c8e52c5 100644 --- a/unittests/InstructionCountCI/FlagM/SecondaryGroup.json +++ b/unittests/InstructionCountCI/FlagM/SecondaryGroup.json @@ -644,7 +644,7 @@ ] }, "cmpxchg8b [rbp]": { - "ExpectedInstructionCount": 24, + "ExpectedInstructionCount": 32, "Comment": "GROUP9 0x0F 0xC7 /1", "ExpectedArm64ASM": [ "add x20, x9, #0x0 (0)", @@ -657,11 +657,19 @@ "mov w25, w24", "mov w24, w21", "mrs x21, nzcv", - "mov w2, w22", - "mov w3, w23", - "caspal w2, w3, w24, w25, [x20]", - "mov w24, w2", - "mov w25, w3", + "ldaxp w1, w2, [x20]", + "eor w0, w1, w22", + "eor w3, w2, w23", + "orr w0, w0, w3", + "cbnz w0, #+0x18", + "stlxp w1, w24, w25, [x20]", + "cbnz w1, #-0x18", + "mov w24, w22", + "mov w25, w23", + "b #+0x10", + "mov w24, w1", + "mov w25, w2", + "clrex", "mov w20, w24", "mov w30, w25", "cmp x24, x22", @@ -674,7 +682,7 @@ ] }, "cmpxchg16b [rbp]": { - "ExpectedInstructionCount": 20, + "ExpectedInstructionCount": 28, "Comment": "GROUP9 0x0F 0xC7 /1", "ExpectedArm64ASM": [ "add x20, x9, #0x0 (0)", @@ -683,11 +691,19 @@ "mov x24, x7", "mov x25, x5", "mrs x21, nzcv", - "mov x2, x22", - "mov x3, x23", - "caspal x2, x3, x24, x25, [x20]", - "mov x24, x2", - "mov x25, x3", + "ldaxp x1, x2, [x20]", + "eor x0, x1, x22", + "eor x3, x2, x23", + "orr x0, x0, x3", + "cbnz x0, #+0x18", + "stlxp w1, x24, x25, [x20]", + "cbnz x1, #-0x18", + "mov x24, x22", + "mov x25, x23", + "b #+0x10", + "mov x24, x1", + "mov x25, x2", + "clrex", "mov x20, x24", "mov x30, x25", "cmp x24, x22", diff --git a/unittests/InstructionCountCI/SecondaryGroup.json b/unittests/InstructionCountCI/SecondaryGroup.json index 4e5cbc5a74..5c56617c90 100644 --- a/unittests/InstructionCountCI/SecondaryGroup.json +++ b/unittests/InstructionCountCI/SecondaryGroup.json @@ -776,7 +776,7 @@ ] }, "cmpxchg8b [rbp]": { - "ExpectedInstructionCount": 24, + "ExpectedInstructionCount": 32, "Comment": "GROUP9 0x0F 0xC7 /1", "ExpectedArm64ASM": [ "add x20, x9, #0x0 (0)", @@ -789,11 +789,19 @@ "mov w25, w24", "mov w24, w21", "mrs x21, nzcv", - "mov w2, w22", - "mov w3, w23", - "caspal w2, w3, w24, w25, [x20]", - "mov w24, w2", - "mov w25, w3", + "ldaxp w1, w2, [x20]", + "eor w0, w1, w22", + "eor w3, w2, w23", + "orr w0, w0, w3", + "cbnz w0, #+0x18", + "stlxp w1, w24, w25, [x20]", + "cbnz w1, #-0x18", + "mov w24, w22", + "mov w25, w23", + "b #+0x10", + "mov w24, w1", + "mov w25, w2", + "clrex", "mov w20, w24", "mov w30, w25", "cmp x24, x22", @@ -806,7 +814,7 @@ ] }, "cmpxchg16b [rbp]": { - "ExpectedInstructionCount": 20, + "ExpectedInstructionCount": 28, "Comment": "GROUP9 0x0F 0xC7 /1", "ExpectedArm64ASM": [ "add x20, x9, #0x0 (0)", @@ -815,11 +823,19 @@ "mov x24, x7", "mov x25, x5", "mrs x21, nzcv", - "mov x2, x22", - "mov x3, x23", - "caspal x2, x3, x24, x25, [x20]", - "mov x24, x2", - "mov x25, x3", + "ldaxp x1, x2, [x20]", + "eor x0, x1, x22", + "eor x3, x2, x23", + "orr x0, x0, x3", + "cbnz x0, #+0x18", + "stlxp w1, x24, x25, [x20]", + "cbnz x1, #-0x18", + "mov x24, x22", + "mov x25, x23", + "b #+0x10", + "mov x24, x1", + "mov x25, x2", + "clrex", "mov x20, x24", "mov x30, x25", "cmp x24, x22",