diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2009-07-16 17:37:26 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2009-07-16 17:37:26 +0000 |
commit | 915bcca52e8f54e7305838bba4d42b3a87d1c6a6 (patch) | |
tree | 3016deafbd82356a9a8b3e103111ccb2add5abda /gas/config | |
parent | 1f85278f1750261761fe5177ccd6b95633f50217 (diff) | |
download | gdb-915bcca52e8f54e7305838bba4d42b3a87d1c6a6.zip gdb-915bcca52e8f54e7305838bba4d42b3a87d1c6a6.tar.gz gdb-915bcca52e8f54e7305838bba4d42b3a87d1c6a6.tar.bz2 |
gas/
2009-07-16 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (md_assemble): Only check i.operands for AX.
(md_estimate_size_before_relax): Don't relax IFUNC symbols.
gas/testsuite/
2009-07-16 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/i386.exp: Run ifunc and x86-64-ifunc.
* gas/i386/ifunc.d: New,
* gas/i386/ifunc.s: Likewise.
* gas/i386/x86-64-ifunc.d: Likewise.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-i386.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 7d170f4..f4660b4 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 |