https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61577
--- Comment #219 from John Buddery <jvb at cyberscience dot com> --- Great, thanks - I'll look at ia64.c and build and test with that change. Yes, "b" on ia64 seems to be a branch register, and the brl op only accepts immediate values not registers. Initially I hoped the assembler would patch this up and accept both, but it doesn't so the two variants are needed. I'll look into the scall attribute as well.