1*5cc74029SAiden Grossman# REQUIRES: exegesis-can-measure-latency, x86_64-linux 2*5cc74029SAiden Grossman 3*5cc74029SAiden Grossman# Check that the value of the segment registers is set properly when in 4*5cc74029SAiden Grossman# subprocess mode. 5*5cc74029SAiden Grossman 6*5cc74029SAiden Grossman# RUN: llvm-exegesis -mtriple=x86_64-unknown-unknown -mode=latency -snippets-file=%s -execution-mode=subprocess | FileCheck %s 7*5cc74029SAiden Grossman 8*5cc74029SAiden Grossman# LLVM-EXEGESIS-DEFREG FS 12345600 9*5cc74029SAiden Grossman# LLVM-EXEGESIS-DEFREG GS 2468ac00 10*5cc74029SAiden Grossman# LLVM-EXEGESIS-DEFREG R13 0 11*5cc74029SAiden Grossman# LLVM-EXEGESIS-DEFREG R14 127 12*5cc74029SAiden Grossman# LLVM-EXEGESIS-DEFREG R15 0 13*5cc74029SAiden Grossman# LLVM-EXEGESIS-MEM-DEF MEM1 4096 0000000012345600 14*5cc74029SAiden Grossman# LLVM-EXEGESIS-MEM-DEF MEM2 4096 000000002468ac00 15*5cc74029SAiden Grossman# LLVM-EXEGESIS-MEM-MAP MEM1 305418240 16*5cc74029SAiden Grossman# LLVM-EXEGESIS-MEM-MAP MEM2 610836480 17*5cc74029SAiden Grossman 18*5cc74029SAiden Grossmanmovq %fs:0, %r13 19*5cc74029SAiden Grossmancmpq $0x12345600, %r13 20*5cc74029SAiden Grossmancmovneq %r14, %r15 21*5cc74029SAiden Grossmanmovq %gs:0, %r13 22*5cc74029SAiden Grossmancmpq $0x2468ac00, %r13 23*5cc74029SAiden Grossmancmovneq %r14, %r15 24*5cc74029SAiden Grossman 25*5cc74029SAiden Grossmanmovq $60, %rax 26*5cc74029SAiden Grossmanmovq %r15, %rdi 27*5cc74029SAiden Grossmansyscall 28*5cc74029SAiden Grossman 29*5cc74029SAiden Grossman# CHECK-NOT: error: 'Child benchmarking process exited with non-zero exit code: Child process returned with unknown exit code' 30