| # RUN: llc -simplify-mir=0 -mtriple=x86_64 -run-pass=none -o - %s | FileCheck -check-prefixes=FULL,ALL %s | |
| # RUN: llc -simplify-mir=1 -mtriple=x86_64 -run-pass=none -o - %s | FileCheck -check-prefixes=SIMPLE,ALL %s | |
| # This test ensures that the MIR parser parses callee saved information in the | |
| # stack objects correctly. | |
| # ALL: name: func0 | |
| # ALL: callsEHReturn: true | |
| # ALL: callsUnwindInit: true | |
| # ALL: hasEHContTarget: true | |
| # ALL: hasEHScopes: true | |
| # ALL: hasEHFunclets: true | |
| --- | |
| name: func0 | |
| callsEHReturn: true | |
| callsUnwindInit: true | |
| hasEHContTarget: true | |
| hasEHScopes: true | |
| hasEHFunclets: true | |
| body: | | |
| bb.0: | |
| ... | |
| # ALL: name: func1 | |
| # FULL: callsEHReturn: false | |
| # FULL: callsUnwindInit: true | |
| # FULL: hasEHContTarget: false | |
| # FULL: hasEHScopes: true | |
| # FULL: hasEHFunclets: false | |
| # SIMPLE-NOT: callsEHReturn | |
| # SIMPLE: callsUnwindInit: true | |
| # SIMPLE-NOT: hasEHContTarget | |
| # SIMPLE: hasEHScopes: true | |
| # SIMPLE-NOT: hasEHFunclets | |
| --- | |
| name: func1 | |
| tracksRegLiveness: true | |
| callsEHReturn: false | |
| callsUnwindInit: true | |
| hasEHContTarget: false | |
| hasEHScopes: true | |
| hasEHFunclets: false | |
| body: | | |
| bb.0: | |
| ... | |
| # ALL: name: func2 | |
| # FULL: callsEHReturn: true | |
| # FULL: callsUnwindInit: false | |
| # FULL: hasEHContTarget: true | |
| # FULL: hasEHScopes: false | |
| # FULL: hasEHFunclets: false | |
| # SIMPLE: callsEHReturn: true | |
| # SIMPLE-NOT: callsUnwindInit | |
| # SIMPLE: hasEHContTarget: true | |
| # SIMPLE-NOT hasEHScopes | |
| # SIMPLE-NOT: hasEHFunclets | |
| --- | |
| name: func2 | |
| tracksRegLiveness: true | |
| callsEHReturn: true | |
| callsUnwindInit: false | |
| hasEHContTarget: true | |
| hasEHScopes: false | |
| hasEHFunclets: false | |
| body: | | |
| bb.0: | |
| ... |