1 # RUN: yaml2obj %s -o %t
2 # RUN: llvm-readobj --coff-load-config %t | FileCheck %s
4 # CHECK: CHPEMetadataPointer: 0x180005000
5 # CHECK: CHPEMetadata [
6 # CHECK-NEXT: Version: 0x1
7 # CHECK-NEXT: CodeMap [
8 # CHECK-NEXT: 0x1000 - 0x1030 ARM64EC
9 # CHECK-NEXT: 0x2000 - 0x2040 ARM64
10 # CHECK-NEXT: 0x3000 - 0x3050 X64
12 # CHECK-NEXT: CodeRangesToEntryPoints [
13 # CHECK-NEXT: 0x1000 - 0x1020 -> 0x1000
14 # CHECK-NEXT: 0x1020 - 0x1040 -> 0x2000
16 # CHECK-NEXT: RedirectionMetadata [
17 # CHECK-NEXT: 0x1000 -> 0x2000
18 # CHECK-NEXT: 0x1020 -> 0x2030
23 ImageBase: 0x180000000
24 SectionAlignment: 4096
26 DLLCharacteristics: [ ]
28 RelativeVirtualAddress: 0x4000
31 Machine: IMAGE_FILE_MACHINE_AMD64
32 Characteristics: [ IMAGE_FILE_EXECUTABLE_IMAGE, IMAGE_FILE_LARGE_ADDRESS_AWARE, IMAGE_FILE_DLL ]
35 Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
36 VirtualAddress: 0x1000
39 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
40 VirtualAddress: 0x4000
44 CHPEMetadataPointer: 0x180005000
46 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]
47 VirtualAddress: 0x5000
51 - UInt32: 0x5050 # CodeMap
52 - UInt32: 3 # CodeMapCount
53 - UInt32: 0x5068 # CodeRangesToEntryPoints
54 - UInt32: 0x5080 # RedirectionMetadata
62 - UInt32: 2 # CodeRangesToEntryPointsCount
63 - UInt32: 2 # RedirectionMetadataCount
70 - UInt32: 0x1001 # CodeMap[0]
72 - UInt32: 0x2000 # CodeMap[1]
74 - UInt32: 0x3002 # CodeMap[2]
76 - UInt32: 0x1000 # CodeRangesToEntryPoints[0]
79 - UInt32: 0x1020 # CodeRangesToEntryPoints[1]
82 - UInt32: 0x1000 # RedirectionMetadata[0]
84 - UInt32: 0x1020 # RedirectionMetadata[1]