1 // Check dumping of the resources stored in .res files. 2 // The input was generated with the following commands, using the original Windows 3 // rc.exe: 4 // > rc /fo test_resource.res /nologo test_resource.rc 5 6 // RUN: llvm-readobj %p/Inputs/resources/test_resource.res | FileCheck %s 7 8 // CHECK: Resource type (int): 9 9 // CHECK-NEXT: Resource name (string): MYACCELERATORS 10 // CHECK-NEXT: Data version: 0 11 // CHECK-NEXT: Memory flags: 0x30 12 // CHECK-NEXT: Language ID: 1033 13 // CHECK-NEXT: Version (major): 0 14 // CHECK-NEXT: Version (minor): 0 15 // CHECK-NEXT: Characteristics: 0 16 // CHECK-NEXT: Data size: 24 17 // CHECK-NEXT: Data: ( 18 // CHECK-NEXT: 0000: 11000300 E7030000 0D004400 4C040000 |..........D.L...| 19 // CHECK-NEXT: 0010: 82001200 BC010000 |........| 20 // CHECK-NEXT: ) 21 22 // CHECK-DAG: Resource type (int): 2 23 // CHECK-NEXT: Resource name (string): CURSOR 24 // CHECK-NEXT: Data version: 0 25 // CHECK-NEXT: Memory flags: 0x30 26 // CHECK-NEXT: Language ID: 1033 27 // CHECK-NEXT: Version (major): 0 28 // CHECK-NEXT: Version (minor): 0 29 // CHECK-NEXT: Characteristics: 0 30 // CHECK-NEXT: Data size: 808 31 // CHECK-NEXT: Data: ( 32 // CHECK-NEXT: 0000: 28000000 10000000 10000000 01001800 |(...............| 33 // CHECK-NEXT: 0010: 00000000 00030000 C40E0000 C40E0000 |................| 34 // CHECK-NEXT: 0020: 00000000 00000000 FFFFFFFF FFFFFFFF |................| 35 // CHECK-NEXT: 0030: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 36 // CHECK-NEXT: 0040: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 37 // CHECK-NEXT: 0050: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 38 // CHECK-NEXT: 0060: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 39 // CHECK-NEXT: 0070: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 40 // CHECK-NEXT: 0080: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 41 // CHECK-NEXT: 0090: FFFFFFFF FFFFFFFF FFFFFFFF FF7F7F7F |................| 42 // CHECK-NEXT: 00A0: 7C7C7C78 78787575 75FFFFFF FFFFFFFF ||||xxxuuu.......| 43 // CHECK-NEXT: 00B0: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 44 // CHECK-NEXT: 00C0: FFFFFFFF 979797FF FFFFFFFF FF838383 |................| 45 // CHECK-NEXT: 00D0: AAAAAADB DBDB7979 79757575 FFFFFFFF |......yyyuuu....| 46 // CHECK-NEXT: 00E0: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 47 // CHECK-NEXT: 00F0: FFFFFFFF 9C9C9C98 9898FFFF FF888888 |................| 48 // CHECK-NEXT: 0100: DBDBDBB7 B7B77D7D 7DFFFFFF FFFFFFFF |......}}}.......| 49 // CHECK-NEXT: 0110: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 50 // CHECK-NEXT: 0120: FFFFFFFF A0A0A09C 9C9C9393 93ADADAD |................| 51 // CHECK-NEXT: 0130: F2F2F284 84848181 81FFFFFF FFFFFFFF |................| 52 // CHECK-NEXT: 0140: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 53 // CHECK-NEXT: 0150: FFFFFFFF A4A4A4D7 D7D79D9D 9DD0D0D0 |................| 54 // CHECK-NEXT: 0160: EEEEEE91 91918D8D 8DFFFFFF FFFFFF81 |................| 55 // CHECK-NEXT: 0170: 81817E7E 7EFFFFFF FFFFFFFF FFFFFFFF |..~~~...........| 56 // CHECK-NEXT: 0180: FFFFFFFF A9A9A9F2 F2F2E5E5 E5E2E2E2 |................| 57 // CHECK-NEXT: 0190: 95959591 91918D8D 8D898989 868686FF |................| 58 // CHECK-NEXT: 01A0: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 59 // CHECK-NEXT: 01B0: FFFFFFFF ADADADF2 F2F2E1E1 E1DFDFDF |................| 60 // CHECK-NEXT: 01C0: E7E7E7E4 E4E4BBBB BB8E8E8E FFFFFFFF |................| 61 // CHECK-NEXT: 01D0: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 62 // CHECK-NEXT: 01E0: FFFFFFFF B5B5B5F2 F2F2E8E8 E8E7E7E7 |................| 63 // CHECK-NEXT: 01F0: EAEAEAC6 C6C69E9E 9EFFFFFF FFFFFFFF |................| 64 // CHECK-NEXT: 0200: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 65 // CHECK-NEXT: 0210: FFFFFFFF B9B9B9F4 F4F4ECEC ECEDEDED |................| 66 // CHECK-NEXT: 0220: CBCBCBA7 A7A7FFFF FFFFFFFF FFFFFFFF |................| 67 // CHECK-NEXT: 0230: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 68 // CHECK-NEXT: 0240: FFFFFFFF BDBDBDF7 F7F7EFEF EFD0D0D0 |................| 69 // CHECK-NEXT: 0250: AFAFAFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 70 // CHECK-NEXT: 0260: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 71 // CHECK-NEXT: 0270: FFFFFFFF C1C1C1F7 F7F7D5D5 D5B6B6B6 |................| 72 // CHECK-NEXT: 0280: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 73 // CHECK-NEXT: 0290: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 74 // CHECK-NEXT: 02A0: FFFFFFFF C4C4C4D9 D9D9BEBE BEFFFFFF |................| 75 // CHECK-NEXT: 02B0: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 76 // CHECK-NEXT: 02C0: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 77 // CHECK-NEXT: 02D0: FFFFFFFF C8C8C8C5 C5C5FFFF FFFFFFFF |................| 78 // CHECK-NEXT: 02E0: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 79 // CHECK-NEXT: 02F0: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 80 // CHECK-NEXT: 0300: FFFFFFFF CBCBCBFF FFFFFFFF FFFFFFFF |................| 81 // CHECK-NEXT: 0310: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 82 // CHECK-NEXT: 0320: FFFFFFFF FFFFFFFF |........| 83 // CHECK-NEXT: ) 84 85 // CHECK-DAG: Resource type (int): 2 86 // CHECK-NEXT: Resource name (string): OKAY 87 // CHECK-NEXT: Data version: 0 88 // CHECK-NEXT: Memory flags: 0x30 89 // CHECK-NEXT: Language ID: 1033 90 // CHECK-NEXT: Version (major): 0 91 // CHECK-NEXT: Version (minor): 0 92 // CHECK-NEXT: Characteristics: 0 93 // CHECK-NEXT: Data size: 808 94 // CHECK-NEXT: Data: ( 95 // CHECK-NEXT: 0000: 28000000 10000000 10000000 01001800 |(...............| 96 // CHECK-NEXT: 0010: 00000000 00030000 C40E0000 C40E0000 |................| 97 // (...) 98 // CHECK-DAG: 0310: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| 99 // CHECK-NEXT: 0320: FFFFFFFF FFFFFFFF |........| 100 // CHECK-NEXT: ) 101 102 // CHECK-DAG: Resource type (int): 4 103 // CHECK-NEXT: Resource name (int): 14432 104 // CHECK-NEXT: Data version: 0 105 // CHECK-NEXT: Memory flags: 0x1030 106 // CHECK-NEXT: Language ID: 2052 107 // CHECK-NEXT: Version (major): 0 108 // CHECK-NEXT: Version (minor): 0 109 // CHECK-NEXT: Characteristics: 0 110 // CHECK-NEXT: Data size: 46 111 // CHECK-NEXT: Data: ( 112 // CHECK-NEXT: 0000: 00000000 00006400 79007500 00000000 |......d.y.u.....| 113 // CHECK-NEXT: 0010: 65007300 68006100 6C006100 00008000 |e.s.h.a.l.a.....| 114 // CHECK-NEXT: 0020: 66006B00 61006F00 79006100 0000 |f.k.a.o.y.a...| 115 // CHECK-NEXT: ) 116 117 // CHECK-DAG: Resource type (int): 5 118 // CHECK-NEXT: Resource name (string): TESTDIALOG 119 // CHECK-NEXT: Data version: 0 120 // CHECK-NEXT: Memory flags: 0x1030 121 // CHECK-NEXT: Language ID: 1033 122 // CHECK-NEXT: Version (major): 0 123 // CHECK-NEXT: Version (minor): 0 124 // CHECK-NEXT: Characteristics: 0 125 // CHECK-NEXT: Data size: 108 126 // CHECK-NEXT: Data: ( 127 // CHECK-NEXT: 0000: 0000C080 00000000 02000A00 0A00C800 |................| 128 // CHECK-NEXT: 0010: 2C010000 00005400 65007300 74000000 |,.....T.e.s.t...| 129 // CHECK-NEXT: 0020: 01000250 00000000 0A000A00 E6000E00 |...P............| 130 // CHECK-NEXT: 0030: 0100FFFF 82004300 6F006E00 74006900 |......C.o.n.t.i.| 131 // CHECK-NEXT: 0040: 6E007500 65003A00 00000000 00000150 |n.u.e.:........P| 132 // CHECK-NEXT: 0050: 00000000 42008600 A1000D00 0200FFFF |....B...........| 133 // CHECK-NEXT: 0060: 80002600 4F004B00 00000000 |..&.O.K.....| 134 // CHECK-NEXT: ) 135 136 // CHECK-DAG: Resource type (int): 9 137 // CHECK-NEXT: Resource name (int): 12 138 // CHECK-NEXT: Data version: 0 139 // CHECK-NEXT: Memory flags: 0x30 140 // CHECK-NEXT: Language ID: 1033 141 // CHECK-NEXT: Version (major): 0 142 // CHECK-NEXT: Version (minor): 0 143 // CHECK-NEXT: Characteristics: 0 144 // CHECK-NEXT: Data size: 24 145 // CHECK-NEXT: Data: ( 146 // CHECK-NEXT: 0000: 11005800 A4000000 0D004800 2E160000 |..X.......H.....| 147 // CHECK-NEXT: 0010: 82001200 BC010000 |........| 148 // CHECK-NEXT: ) 149 150 // CHECK-DAG: Resource type (int): 4 151 // CHECK-NEXT: Resource name (string): "EAT" 152 // CHECK-NEXT: Data version: 0 153 // CHECK-NEXT: Memory flags: 0x1030 154 // CHECK-NEXT: Language ID: 3081 155 // CHECK-NEXT: Version (major): 0 156 // CHECK-NEXT: Version (minor): 0 157 // CHECK-NEXT: Characteristics: 0 158 // CHECK-NEXT: Data size: 48 159 // CHECK-NEXT: Data: ( 160 // CHECK-NEXT: 0000: 00000000 00006400 66006900 73006800 |......d.f.i.s.h.| 161 // CHECK-NEXT: 0010: 00000000 65007300 61006C00 61006400 |....e.s.a.l.a.d.| 162 // CHECK-NEXT: 0020: 00008000 66006400 75006300 6B000000 |....f.d.u.c.k...| 163 // CHECK-NEXT: ) 164