Marek Sokolowski | c2189b8 | 2017-09-20 18:33:35 +0000 | [diff] [blame] | 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: ) |