xref: /llvm-project/llvm/test/tools/llvm-exegesis/X86/latency/memory-annotations.s (revision 3300bc34f7bccf29c14221fa4b651f7bc82c46d5)
1*43b8e86bSAiden Grossman# REQUIRES: exegesis-can-measure-latency, x86_64-linux
29f80831fSAiden Grossman
39f80831fSAiden Grossman# Test the basic functionality of memory annotations, namely that we can
49f80831fSAiden Grossman# specify a memory definition, map it into the process, and then use the
59f80831fSAiden Grossman# specified memory.
69f80831fSAiden Grossman
79f80831fSAiden Grossman# RUN: llvm-exegesis -mtriple=x86_64-unknown-unknown -mode=latency -snippets-file=%s -execution-mode=subprocess | FileCheck %s
89f80831fSAiden Grossman# RUN: llvm-exegesis -mtriple=x86_64-unknown-unknown -mode=latency -snippets-file=%s -execution-mode=subprocess -repetition-mode=loop | FileCheck %s
99f80831fSAiden Grossman
109f80831fSAiden Grossman# CHECK: measurements:
119f80831fSAiden Grossman# CHECK-NEXT: value: {{.*}}, per_snippet_value: {{.*}}
129f80831fSAiden Grossman
139f80831fSAiden Grossman# LLVM-EXEGESIS-MEM-DEF test1 4096 2147483647
1446f42e2eSAiden Grossman# LLVM-EXEGESIS-MEM-MAP test1 1048576
159f80831fSAiden Grossman
1646f42e2eSAiden Grossmanmovq $1048576, %rax
179f80831fSAiden Grossmanmovq (%rax), %rdi
18