> On Tue, May 8, 2012 at 1:28 AM, Jan Hubicka <hubi...@ucw.cz> wrote: > > The idea here was originally to prevent LOOP instruction to get out of > > bounds. > > ASM statement even if they are single line may be arbitrary long and thus > > can > > run out of the limits. > > Arbitrary long, but interrupted by semi-colons? From the > define_asm_attributes documentation (see > http://gcc.gnu.org/onlinedocs/gccint/Tagging-Insns.html): > > "A specification for a length attribute is handled specially. The way > to compute the length of an asm insn is to multiply the length > specified in the expression define_asm_attributes by the number of > machine instructions specified in the asm statement, determined by > counting the number of semicolons and newlines in the string. > Therefore, the value of the length attribute specified in a > define_asm_attributes should be the maximum possible length of a > single machine instruction. "
Yep, still it is possible to use gas's directive to put there more than 128 bytes without having single ; in it producing an error when using loop instruction. Back then it seemed to be better safe than sorry. But these days given that we do not output nops, I am happy with the 15 byte default.... Honza > > Ciao! > Steven