[PATCH] gas/config/tc-tic4x.c: Let insn name full use its space and always zero terminated

Chen Gang gang.chen.5i5j@gmail.com
Mon Nov 24 05:54:00 GMT 2014


On 11/24/14 11:27, Alan Modra wrote:
> On Mon, Nov 17, 2014 at 11:47:08PM +0800, Chen Gang wrote:
>> strncpy() can not be sure of insn name must be zero terminated, so need
>> set it explicitly.
> 
> OK.
> 
>> At present, insn name is only used in tic4x_insn_check() which only test
>> insn name within 9 chars explicitly. So it is harmless to use full space
>> of insn name for strncpy().
> 
> Not OK.  You missed noticing that md_assemble is called recursively
> for parallel instructions, and does strcat (insn->name, "_").  So
> space must be reserved.
> 

Oh sorry, it is my typo issue, it should be:

  "... insn name is only useful in tic4x_insn_check() ..."

And for me, we also need strncat() instead of the strcat() (excuse me
for not noticing about it in the original fixing strncat issue patch):

      strcat (insn->name, "_");
      strncat (insn->name, str, TIC4X_NAME_MAX - 1 - strlen (insn->name));


Thanks.
-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed



More information about the Binutils mailing list