On Feb 24 2020, Petr Tesarik wrote: > On Mon, 24 Feb 2020 12:29:40 +0100 > Andreas Schwab <[email protected]> wrote: > >> On Feb 24 2020, Petr Tesarik wrote: >> >> > This works great ... until there's some inline asm() statement, for >> > which gcc cannot keep track of the length attribute, so it is probably >> > taken as zero. >> >> GCC computes it by counting the number of asm insns. You can use >> ADJUST_INSN_LENGTH to adjust this as needed. > > Hmm, that's interesting, but does it work for inline asm() statements?
Yes, for a suitable definition of work. > The argument is essentially a free-form string (with some > substitution), and the compiler cannot know how many bytes they occupy. That's why ADJUST_INSN_LENGTH can adjust it. Andreas. -- Andreas Schwab, SUSE Labs, [email protected] GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different."
