ishare <june.tune.sea@xxxxxxxxx> writes: > here are a portion of build-in asm code : > > " .long 661b\n" \ > " .long 663f\n" \ > " .byte %c0\n" / \ > " .byte 662b-661b\n" \ > " .byte 664f-663f\n" > > what is 661b,663f ,etc . "661b" means the location of the nearest preceding local label "661:". "663f" likewise refers to the nearest following local label "663:". It is a way to prevent the labels from conflicting at the assembler level when the macro is used repeatedly in the same translation unit. See "Local Labels" in the GNU assembler manual, in binutils. http://sourceware.org/binutils/docs-2.23.1/as/Symbol-Names.html