| ; A module that defines main gets CELQMAIN in RENT format, through which the | |
| ; Language Environment startup routine CELQSTRT finds main and its ADA, plus a | |
| ; reference to the bootstrap routine CELQBST. | |
| ; | |
| ; RUN: llc < %s -mtriple=s390x-ibm-zos | FileCheck %s | |
| ; RUN: llc < %s -mtriple=s390x-ibm-zos -filetype=obj -o - | od -Ax -tx1 | FileCheck --check-prefix=OBJ %s | |
| ; CHECK: CELQMAIN XATTR LINKAGE(OS),SCOPE(LIBRARY) | |
| ; CHECK-NEXT: CELQMAIN DS 0H | |
| ; CHECK-NEXT: * CELQMAIN, RENT format | |
| ; CHECK-NEXT: DC XL4'04000001' | |
| ; CHECK-NEXT: DC XL4'00000000' | |
| ; CHECK-NEXT: * Address of main | |
| ; CHECK-NEXT: DC AD(main) | |
| ; CHECK-NEXT: * Address of CELQINPL | |
| ; CHECK-NEXT: DC AD(CELQINPL) | |
| ; CHECK-NEXT: * Q(environment) of main | |
| ; CHECK-NEXT: DC RD(main) | |
| ; CHECK-NEXT: * Reference to CELQBST | |
| ; CHECK-NEXT: DC AD(CELQBST) | |
| ; CHECK: EXTRN CELQINPL | |
| ; CHECK: CELQINPL XATTR LINKAGE(OS),SCOPE(EXPORT) | |
| ; CHECK: EXTRN CELQBST | |
| ; CHECK: CELQBST XATTR LINKAGE(OS),SCOPE(EXPORT) | |
| ; OBJ: 04 00 00 01 00 00 00 00 | |
| define signext i32 @main() { | |
| ret i32 42 | |
| } |