[llvm] 186db1b - Revert "[llvm-exegesis] Fix preservation of RDI in subprocess mode (#72458)"

Aiden Grossman via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 16 10:40:24 PST 2023


Author: Aiden Grossman
Date: 2023-11-16T10:39:53-08:00
New Revision: 186db1bcb0096a6af348d7e17866c68fa2004068

URL: https://github.com/llvm/llvm-project/commit/186db1bcb0096a6af348d7e17866c68fa2004068
DIFF: https://github.com/llvm/llvm-project/commit/186db1bcb0096a6af348d7e17866c68fa2004068.diff

LOG: Revert "[llvm-exegesis] Fix preservation of RDI in subprocess mode (#72458)"

This reverts commit 0718c1a8405ac130d72cd3525befed2911618cc7.

The test doesn't have the correct requires string apparently because it
attempts to run on all the buildbots. Reverting until I have time to fix
the test and reland it.

Added: 
    

Modified: 
    llvm/tools/llvm-exegesis/lib/X86/Target.cpp

Removed: 
    llvm/test/tools/llvm-exegesis/X86/latency/subprocess-preserved-registers.s


################################################################################
diff  --git a/llvm/test/tools/llvm-exegesis/X86/latency/subprocess-preserved-registers.s b/llvm/test/tools/llvm-exegesis/X86/latency/subprocess-preserved-registers.s
deleted file mode 100644
index 1e67006b635c750..000000000000000
--- a/llvm/test/tools/llvm-exegesis/X86/latency/subprocess-preserved-registers.s
+++ /dev/null
@@ -1,30 +0,0 @@
-# REQUIRES: exegesis-can-execute-x86_64
-
-# RUN: llvm-exegesis -mtriple=x86_64-unknown-unknown -mode=latency -snippets-file=%s -execution-mode=subprocess | FileCheck %s
-
-# See comment in ./subprocess-abnormal-exit-code.s on the transient
-# PTRACE_ATTACH failure.
-# ALLOW_RETRIES: 2
-
-# Check that the value of the registers preserved in subprocess mode while
-# making the ioctl system call are actually preserved correctly.
-
-# LLVM-EXEGESIS-DEFREG RAX 11
-# LLVM-EXEGESIS-DEFREG RDI 13
-# LLVM-EXEGESIS-DEFREG RSI 17
-# LLVM-EXEGESIS-DEFREG R13 0
-# LLVM-EXEGESIS-DEFREG R12 127
-
-cmpq $0x11, %rax
-cmovneq %r12, %r13
-cmpq $0x13, %rdi
-cmovneq %r12, %r13
-cmpq $0x17, %rsi
-cmovneq %r12, %r13
-
-movq $60, %rax
-movq %r13, %rdi
-syscall
-
-# CHECK-NOT: error:           'Child benchmarking process exited with non-zero exit code: Child process returned with unknown exit code'
-

diff  --git a/llvm/tools/llvm-exegesis/lib/X86/Target.cpp b/llvm/tools/llvm-exegesis/lib/X86/Target.cpp
index bf8fd9ec7066478..ac99e98cc851f34 100644
--- a/llvm/tools/llvm-exegesis/lib/X86/Target.cpp
+++ b/llvm/tools/llvm-exegesis/lib/X86/Target.cpp
@@ -1205,7 +1205,7 @@ ExegesisX86Target::configurePerfCounter(long Request, bool SaveRegisters) const
   if(SaveRegisters) {
     // Restore RAX, RDI, and RSI, in reverse order.
     generateRegisterStackPop(X86::RSI, ConfigurePerfCounterCode);
-    generateRegisterStackPop(X86::RDI, ConfigurePerfCounterCode);
+    generateRegisterStackPop(X86::RIP, ConfigurePerfCounterCode);
     generateRegisterStackPop(X86::RAX, ConfigurePerfCounterCode);
   }
   return ConfigurePerfCounterCode;


        


More information about the llvm-commits mailing list