Rev 157 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 157 | Rev 242 | ||
---|---|---|---|
Line 1196... | Line 1196... | ||
1196 | jne symbol_character_conversion |
1196 | jne symbol_character_conversion |
1197 | lods word [esi] |
1197 | lods word [esi] |
1198 | movzx ecx,ah |
1198 | movzx ecx,ah |
1199 | lea ebx,[edi+3] |
1199 | lea ebx,[edi+3] |
1200 | jmp convert_to_quoted_string |
1200 | jecxz convert_to_quoted_string |
- | 1201 | cmp byte [esi],'\' |
|
- | 1202 | jne convert_to_quoted_string |
|
- | 1203 | inc esi |
|
- | 1204 | dec ecx |
|
- | 1205 | dec ebx |
|
- | 1206 | jmp convert_to_quoted_string |
|
1201 | symbol_character_conversion: |
1207 | symbol_character_conversion: |
1202 | cmp al,22h |
1208 | cmp al,22h |
1203 | je after_macro_operators |
1209 | je after_macro_operators |
1204 | cmp al,'`' |
1210 | cmp al,'`' |
1205 | je reduce_symbol_conversion |
1211 | je reduce_symbol_conversion |
Line 1258... | Line 1264... | ||
1258 | lods byte [esi] |
1264 | lods byte [esi] |
1259 | movzx ecx,al |
1265 | movzx ecx,al |
1260 | jecxz do_symbol_concatenation |
1266 | jecxz do_symbol_concatenation |
1261 | cmp byte [esi],'\' |
1267 | cmp byte [esi],'\' |
1262 | jne do_symbol_concatenation |
1268 | je concatenate_escaped_symbol |
1263 | sub esi,2 |
1269 | do_symbol_concatenation: |
1264 | jmp no_concatenation |
- | |
1265 | do_symbol_concatenation: |
- | |
1266 | add [ebx],al |
1270 | add [ebx],cl |
1267 | jc name_too_long |
1271 | jc name_too_long |
1268 | rep movs byte [edi],[esi] |
1272 | rep movs byte [edi],[esi] |
1269 | jmp after_macro_operators |
1273 | jmp after_macro_operators |
1270 | string_concatenation: |
1274 | concatenate_escaped_symbol: |
- | 1275 | inc esi |
|
- | 1276 | dec ecx |
|
- | 1277 | jz do_symbol_concatenation |
|
- | 1278 | movzx eax,byte [esi] |
|
- | 1279 | cmp byte [characters+eax],0 |
|
- | 1280 | jne do_symbol_concatenation |
|
- | 1281 | sub esi,3 |
|
- | 1282 | jmp no_concatenation |
|
- | 1283 | string_concatenation: |
|
1271 | cmp byte [esi],22h |
1284 | cmp byte [esi],22h |
1272 | je do_string_concatenation |
1285 | je do_string_concatenation |
1273 | cmp byte [esi],'`' |
1286 | cmp byte [esi],'`' |
1274 | jne no_concatenation |
1287 | jne no_concatenation |
1275 | concatenate_converted_symbol: |
1288 | concatenate_converted_symbol: |
Line 1283... | Line 1296... | ||
1283 | jne concatenate_converted_symbol_character |
1296 | jne concatenate_converted_symbol_character |
1284 | inc esi |
1297 | inc esi |
1285 | lods byte [esi] |
1298 | lods byte [esi] |
1286 | movzx ecx,al |
1299 | movzx ecx,al |
1287 | add [ebx],ecx |
1300 | jecxz finish_concatenating_converted_symbol |
- | 1301 | cmp byte [esi],'\' |
|
- | 1302 | jne finish_concatenating_converted_symbol |
|
- | 1303 | inc esi |
|
- | 1304 | dec ecx |
|
- | 1305 | finish_concatenating_converted_symbol: |
|
- | 1306 | add [ebx],ecx |
|
1288 | rep movs byte [edi],[esi] |
1307 | rep movs byte [edi],[esi] |
1289 | jmp after_macro_operators |
1308 | jmp after_macro_operators |
1290 | concatenate_converted_symbol_character: |
1309 | concatenate_converted_symbol_character: |
1291 | or al,al |
1310 | or al,al |
1292 | jz after_macro_operators |
1311 | jz after_macro_operators |