For the attached code, there's no reason why the generated code at -O2 would need an unused stack-slot (a second with -march=v10, a first with -march=v32) when operand 5 (the last) of the asm is "g" than if it's "X". Using "X" seems a little awkward life-time-wise because the input is supposed to be valid. I don't see this oddness on the host with native 4.1.2 on the host, with/without -m32.
-- Summary: odd extra unused stack space/register allocated with asm Product: gcc Version: 4.3.3 Status: UNCONFIRMED Severity: minor Priority: P3 Component: target AssignedTo: hp at gcc dot gnu dot org ReportedBy: hp at gcc dot gnu dot org GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: cris-axis-elf http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38350