https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86984
--- Comment #1 from Martin Sebor <msebor at gcc dot gnu.org> --- Created attachment 44552 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44552&action=edit Reduced test case. Compiling the attached test case shows the invalid offsets in the assembly: $ gcc -S -O2 -Wall -Wwrite-strings -Werror -fmerge-all-constants -fno-stack-protector -mieee plural.c -o/dev/stdout | grep gprelhigh ldah $1,yypgoto+2305843009213693936($29) !gprelhigh ldah $1,yypact($29) !gprelhigh ldah $1,yytable($29) !gprelhigh ldah $1,yydefact($29) !gprelhigh ldah $2,yyr2($29) !gprelhigh ldah $15,yyr1($29) !gprelhigh ldah $1,yypgoto($29) !gprelhigh ldah $5,yycheck($29) !gprelhigh ldah $1,yydefgoto($29) !gprelhigh ldah $2,yypgoto+2305843009213693936($29) !gprelhigh ldah $2,yytable($29) !gprelhigh