Open
Description
llvm-exegesis --opcode-name=CMP64rr --mode=latency --repetition-mode=middle-half-duplicate --execution-mode=subprocess
produces the following:
...
---
mode: latency
key:
instructions:
- 'CMP64rr RSI RSI'
- 'ADC64ri32_ND RSI RDI i_0x1'
config: ''
register_initial_values:
- 'RSI=0x0'
- 'RDI=0x0'
cpu_name: skylake-avx512
llvm_triple: x86_64-grtev4-linux-gnu
min_instructions: 10000
measurements: []
error: 'snippet crashed while running: Illegal instruction'
info: Repeating two instructions
assembled_snippet: 415541544989FC4989F548BF0000000000000000488D350000000048C1EE0C48C1E60C4881EE0010000048B80B000000000000000F054C8D05000000004C89E74C01C748C1EF0C48C1E70C4881C70010000048BE00F0FFFFFF7F00004829FE48B80B000000000000000F0548BF00E0FFFFFF7F000048BE001000000000000048BA030000000000000049BA11000000000000004D89E849B9000000000000000048B809000000000000000F0548BC00F0FFFFFF7F000048BE000000000000000048BF00000000000000005141535057565248BF00E0FFFFFF7F00008B3F48BE032400000000000048BA010000000000000048B810000000000000000F055A5E5F58415B594839F662F4CC1883D7014839F662F4CC1883D7014839F662F4CC1883D7014839F662F4CC1883D70148BF00E0FFFFFF7F00008B3F48BE012400000000000048BA010000000000000048B810000000000000000F0548BF000000000000000048B83C000000000000000F05415C415DC3415541544989FC4989F548BF0000000000000000488D350000000048C1EE0C48C1E60C4881EE0010000048B80B000000000000000F054C8D05000000004C89E74C01C748C1EF0C48C1E70C4881C70010000048BE00F0FFFFFF7F00004829FE48B80B000000000000000F0548BF00E0FFFFFF7F000048BE001000000000000048BA030000000000000049BA11000000000000004D89E849B9000000000000000048B809000000000000000F0548BC00F0FFFFFF7F000048BE000000000000000048BF00000000000000005141535057565248BF00E0FFFFFF7F00008B3F48BE032400000000000048BA010000000000000048B810000000000000000F055A5E5F58415B594839F662F4CC1883D7014839F662F4CC1883D7014839F662F4CC1883D7014839F662F4CC1883D70148BF00E0FFFFFF7F00008B3F48BE012400000000000048BA010000000000000048B810000000000000000F0548BF000000000000000048B83C000000000000000F05415C415DC3
...
Note that this does not happen when using -execution-mode=inprocess
.
This also seems to be ahppening transiently depending upon what the second instruction is.