About input_scrub_next_buffer() for input_line_pointer

libra mr924352@cs.nthu.edu.tw
Mon Jul 19 02:37:00 GMT 2004


The "input_line_pointer" is pointer to the whole *.s file that want to be

assembled by asembler.

The "input_line_pointer" is set by input_scrub_next_buffer(&input_line_pointer)

in  read_a_source_file() function which is defined in read.c

My question is that:

If my test.s is as following:

 b (loop)

1. Then, the input_line_pointer is pointer like "\n.text\n b (loop)\n"
If my test.s is as following:

 (1,1) b (loop)

2. Then, the input_loine_pointer is pointer like "\n.text\n (1,1) b(loop)"

The difference is that when i add "(1,1) in front of the b (loop)", 
 the SPACE between "b" and "(loop)" disappear.

We need the SPACE between b and (loop), in order to separate the instruction 
and operand.

Anyone can tell me what happen?

                                                      Thanks a lot!!


More information about the Binutils mailing list