Subversion Repositories Kolibri OS

Rev

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