# RUN: llc -run-pass none -o - %s | FileCheck %s
# This test ensures that the MIR parser parses machine functions correctly.

--- |

  define i32 @foo() {
    ret i32 0
  }

  define i32 @bar() {
    ret i32 0
  }

  define i32 @func() {
    ret i32 0
  }

  define i32 @func2() {
    ret i32 0
  }

...
---
# CHECK: name: foo
# CHECK-NEXT: alignment:
# CHECK-NEXT: exposesReturnsTwice: false
# CHECK: ...
name:            foo
...
---
# CHECK: name: bar
# CHECK-NEXT: alignment:
# CHECK-NEXT: exposesReturnsTwice: false
# CHECK: ...
name:            bar
...
---
# CHECK: name: func
# CHECK-NEXT: alignment: 256
# CHECK-NEXT: exposesReturnsTwice: false
# CHECK: ...
name:            func
alignment:       256
...
---
# CHECK: name: func2
# CHECK-NEXT: alignment: 65536
# CHECK-NEXT: exposesReturnsTwice: true
# CHECK: ...
name:            func2
alignment:       65536
exposesReturnsTwice: true
...
