https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118940
--- Comment #7 from Miao Wang <shankerwangmiao at gmail dot com> --- (In reply to Andrew Pinski from comment #6) > (In reply to Miao Wang from comment #3) > > (In reply to Andrew Pinski from comment #2) > > > I am suspect the inline-asm is just broken rather than the compiler being > > > broken ... > > > > However, by replacing the inline-asm with a simple nop, the issue persists. > > By replacing with a simple nop, I assume you are talking about the > inline-asm template rather than the inline-asm's operands? Yes. > Because I think the operands usage is broken. Additionally, by removing the do{ ... } while(0) wrap from bigint_test_exec(), the issue disappears. I believe that if it is the operands usage issue, the result should be the same no matter whether it is wrapped in a do{ ... } while(0).