linux-packaging-mono/external/llvm/test/CodeGen/X86/xray-multiplerets-in-blocks.mir
Xamarin Public Jenkins (auto-signing) e19d552987 Imported Upstream version 5.18.0.161
Former-commit-id: 4db48158d3a35497b8f118ab21b5f08ac3d86d98
2018-10-19 08:34:24 +00:00

29 lines
545 B
YAML

# RUN: llc -run-pass xray-instrumentation -mtriple=x86_64-unknown-linux-gnu -o - %s | FileCheck %s
#
# Make sure we can handle multiple ret instructions in a single basic block for
# XRay.
--- |
define i32 @foo() noinline uwtable "function-instrument"="xray-always" {
ret i32 0
ret i32 1
}
...
---
name: foo
tracksRegLiveness: true
liveins:
- { reg: '%edi'}
body: |
bb.0:
liveins: %edi
; CHECK: PATCHABLE_FUNCTION_ENTER
RETQ
; CHECK-NEXT: PATCHABLE_RET
RETQ
; CHECK-NEXT: PATCHABLE_RET
...