http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58426
--- Comment #3 from Jan-Benedict Glaw <jbg...@lug-owl.de> --- Hm, the initial PLUS part looks a bit like what I ment to fix with a recent patch. How old is your checkout? My fix was committed as r202600 / git:3719e41cf6b9d. So I hope I didn't break something else. (This showed up in GIT at Sun Sep 15 09:44:29 2013 +0000.) For reference: http://gcc.gnu.org/git/?p=gcc.git;a=commit;h=3719e41cf6b9d447d8e8e2971d6a459bc41853b2 --- a/gcc/config/vax/constraints.md +++ b/gcc/config/vax/constraints.md @@ -114,5 +114,6 @@ (define_constraint "T" "@internal satisfies CONSTANT_P and, if pic is enabled, is not a SYMBOL_REF, LABEL_REF, or CONST." - (ior (not (match_code "const,symbol_ref,label_ref")) - (match_test "!flag_pic"))) + (and (match_test ("CONSTANT_P (op)")) + (ior (not (match_code "symbol_ref,label_ref,const")) + (match_test "!flag_pic")))) As you seem to use 4.8.1, your GCC is older than my commit, so I think backporting this patch would probably cure your problem. Give it a try!