X-Git-Url: http://drtracing.org/?a=blobdiff_plain;ds=sidebyside;f=gas%2Fconfig%2Ftc-i386.c;h=f4660b4ec7dfed9649465c4f085ad71813c83f25;hb=915bcca52e8f54e7305838bba4d42b3a87d1c6a6;hp=7d170f491dace71f8d60f4506a874f4ed3f3276f;hpb=1f85278f1750261761fe5177ccd6b95633f50217;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 7d170f491d..f4660b4ec7 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -2821,7 +2821,7 @@ md_assemble (char *line) if (i.types[0].bitfield.imm1) i.imm_operands = 0; /* kludge for shift insns. */ - for (j = 0; j < 3; j++) + for (j = 0; j < i.operands; j++) if (i.types[j].bitfield.inoutportreg || i.types[j].bitfield.shiftcount || i.types[j].bitfield.acc @@ -6975,7 +6975,9 @@ md_estimate_size_before_relax (fragP, segment) #if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) || (IS_ELF && (S_IS_EXTERNAL (fragP->fr_symbol) - || S_IS_WEAK (fragP->fr_symbol))) + || S_IS_WEAK (fragP->fr_symbol) + || ((symbol_get_bfdsym (fragP->fr_symbol)->flags + & BSF_GNU_INDIRECT_FUNCTION)))) #endif #if defined (OBJ_COFF) && defined (TE_PE) || (OUTPUT_FLAVOR == bfd_target_coff_flavour