X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gas%2Fconfig%2Ftc-sh64.h;h=8ce330b5116714b33731a5063adc809cb1a41987;hb=0c608d6b62f9164203685ab125b4b3ad113eb26e;hp=23e72f62f2ceff09c539580a574de59ce427ec10;hpb=ec2655a6a75bc61d21e6f8ddc1e9f9027a8914dd;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/config/tc-sh64.h b/gas/config/tc-sh64.h index 23e72f62f2..8ce330b511 100644 --- a/gas/config/tc-sh64.h +++ b/gas/config/tc-sh64.h @@ -1,6 +1,5 @@ /* This file is tc-sh64.h - Copyright 2000, 2001, 2002, 2003, 2007 - Free Software Foundation, Inc. + Copyright (C) 2000-2016 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -115,10 +114,11 @@ extern int sh64_target_mach (void); /* Don't complain when we leave fx_subsy around. */ #undef TC_VALIDATE_FIX_SUB -#define TC_VALIDATE_FIX_SUB(FIX) \ - ((FIX)->fx_r_type == BFD_RELOC_32_PLT_PCREL \ - || (sh_relax && SWITCH_TABLE (FIX)) \ - || *symbol_get_tc ((FIX)->fx_addsy) != NULL) +#define TC_VALIDATE_FIX_SUB(FIX, SEG) \ + ((md_register_arithmetic || (SEG) != reg_section) \ + && ((FIX)->fx_r_type == BFD_RELOC_32_PLT_PCREL \ + || (sh_relax && SWITCH_TABLE (FIX)) \ + || *symbol_get_tc ((FIX)->fx_addsy) != NULL)) /* Note the kludge: we want to put back C, and we also want to consume the expression, since we have handled it ourselves. FIXME: What we really