1# RUN: llc -simplify-mir=0 -march=x86-64 -run-pass=none -o - %s | FileCheck -check-prefixes=FULL,ALL %s 2# RUN: llc -simplify-mir=1 -march=x86-64 -run-pass=none -o - %s | FileCheck -check-prefixes=SIMPLE,ALL %s 3 4# This test ensures that the MIR parser parses callee saved information in the 5# stack objects correctly. 6 7# ALL: name: func0 8# ALL: callsEHReturn: true 9# ALL: callsUnwindInit: true 10# ALL: hasEHCatchret: true 11# ALL: hasEHScopes: true 12# ALL: hasEHFunclets: true 13 14--- 15name: func0 16callsEHReturn: true 17callsUnwindInit: true 18hasEHCatchret: true 19hasEHScopes: true 20hasEHFunclets: true 21body: | 22 bb.0: 23... 24 25# ALL: name: func1 26# FULL: callsEHReturn: false 27# FULL: callsUnwindInit: true 28# FULL: hasEHCatchret: false 29# FULL: hasEHScopes: true 30# FULL: hasEHFunclets: false 31 32# SIMPLE-NOT: callsEHReturn 33# SIMPLE: callsUnwindInit: true 34# SIMPLE-NOT: hasEHCatchret 35# SIMPLE: hasEHScopes: true 36# SIMPLE-NOT: hasEHFunclets 37--- 38name: func1 39tracksRegLiveness: true 40callsEHReturn: false 41callsUnwindInit: true 42hasEHCatchret: false 43hasEHScopes: true 44hasEHFunclets: false 45body: | 46 bb.0: 47... 48 49# ALL: name: func2 50# FULL: callsEHReturn: true 51# FULL: callsUnwindInit: false 52# FULL: hasEHCatchret: true 53# FULL: hasEHScopes: false 54# FULL: hasEHFunclets: false 55 56# SIMPLE: callsEHReturn: true 57# SIMPLE-NOT: callsUnwindInit 58# SIMPLE: hasEHCatchret: true 59# SIMPLE-NOT hasEHScopes 60# SIMPLE-NOT: hasEHFunclets 61--- 62name: func2 63tracksRegLiveness: true 64callsEHReturn: true 65callsUnwindInit: false 66hasEHCatchret: true 67hasEHScopes: false 68hasEHFunclets: false 69body: | 70 bb.0: 71... 72