Re: typos
Hi Ralf, The attached patches fix some typos, writing inconsistencies, and punctuation issues in the various documentation bits of binutils and subprojects. Thanks very much for submitting these patches, I have applied them along with the ChangeLog entries. Cheers Nick ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
x86_64 target for Solaris 2.10?
I am trying to build a gdb (6.3) for the x86_64 host/target for Solaris 2.10. BFD does not seem to support x86_64 for Solaris. Is there a different target I could use to configure bfd which would also work on solaris? Thanks, -Tucker Taft [EMAIL PROTECTED] ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/2756] m68k-linux still has #APP/#NO_APP issue
--- Additional Comments From nickc at redhat dot com 2006-07-24 16:30 --- Hi Lior, Please accept my apologese for taking so long to get back to you on this problem. I have now tried your test case - it does indeed reproduce the problem, and the patch is acceptable, so I have applied to the sources. Cheers Nick -- What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://sourceware.org/bugzilla/show_bug.cgi?id=2756 --- You are receiving this mail because: --- You are on the CC list for the bug, or are watching someone who is. ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug ld/2729] ld terminated with signal 11 [Segmentation fault]
--- Additional Comments From nickc at redhat dot com 2006-07-24 16:48 --- Hi Martin, Sorry for the long delay in responding - work has been really hectic recently. Anyway, I am glad that the patch is workign for you as well. I will check it in to the sources so that it does not get lost. I am intrigued by the absence of the atexit symbol. Looking at the cross reference files it appears that the Interix linker is obtainign it from a file called wk_atexit.o. What is this file ? Is it included in the gcc linker's command line ? Does it contain a weak definition of the atexit symbol ? Cheers Nick -- http://sourceware.org/bugzilla/show_bug.cgi?id=2729 --- You are receiving this mail because: --- You are on the CC list for the bug, or are watching someone who is. ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
Re: [Bug gas/2848] New: macro name syntax changed
Hi Zippel, Until at least 2.15 as accepted a macro like this: .macro foo size,arg,arg2 move\size \arg,\arg2 .endm foo.l %d0,%d1 Another alternative is to restore the old behaviour, which only accepts alphanumeric characters and '_'/'$'. Wouldn't it be better to fix the sources that use this confusing form of macro invocation. Reading this as a programmer it looks to me like you are trying to use an opcode called "foo.l" and not a macro called "foo" whose first argument is ".l". ie wouldn't it be clearer to have: foo .l, %d0, %d1 Cheers Nick ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/2848] macro name syntax changed
--- Additional Comments From nickc at redhat dot com 2006-07-24 17:01 --- Subject: Re: New: macro name syntax changed Hi Zippel, > Until at least 2.15 as accepted a macro like this: > > .macro foo size,arg,arg2 > move\size \arg,\arg2 > .endm > > foo.l %d0,%d1 > Another alternative is to restore the old behaviour, which only accepts > alphanumeric characters and '_'/'$'. Wouldn't it be better to fix the sources that use this confusing form of macro invocation. Reading this as a programmer it looks to me like you are trying to use an opcode called "foo.l" and not a macro called "foo" whose first argument is ".l". ie wouldn't it be clearer to have: foo .l, %d0, %d1 Cheers Nick -- http://sourceware.org/bugzilla/show_bug.cgi?id=2848 --- You are receiving this mail because: --- You are on the CC list for the bug, or are watching someone who is. ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/2848] macro name syntax changed
-- What|Removed |Added Status|NEW |WAITING http://sourceware.org/bugzilla/show_bug.cgi?id=2848 --- You are receiving this mail because: --- You are on the CC list for the bug, or are watching someone who is. ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/2848] macro name syntax changed
--- Additional Comments From zippel at linux-m68k dot org 2006-07-24 17:32 --- You read it correctly, the intention is to provide the opcodes foo.b/foo.w/foo.l, so using "foo .l" would be even more confusing. The point is that gas broke compatibility here, so I can't provide such opcodes at all anymore. -- http://sourceware.org/bugzilla/show_bug.cgi?id=2848 --- You are receiving this mail because: --- You are on the CC list for the bug, or are watching someone who is. ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
Re: x86_64 target for Solaris 2.10?
On Mon, Jul 24, 2006 at 09:36:50AM -0400, Tucker Taft wrote: > I am trying to build a gdb (6.3) for the x86_64 host/target > for Solaris 2.10. BFD does not seem to support > x86_64 for Solaris. Is there a different target I could > use to configure bfd which would also work on solaris? Try i686-pc-solaris2.10, using GDB 6.5. But I don't think GDB supports 64-bit binaries on Solaris x86. -- Daniel Jacobowitz CodeSourcery ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug binutils/2958] New: FAIL: copy with setting section flags 3
sed -f /xxx/gnu/binutils-2.17.50/src/binutils/testsuite/config/hppa.sed < /xxx/ gnu/binutils-2.17.50/src/binutils/testsuite/binutils-all/bintest.s > asm.s Executing on host: /xxx/gnu/binutils-2.17.50/objdir/gas/as-new asm.s -o tmpdir /bintest.o(timeout = 300) /home/gnu/binutils-2.17.50/objdir/binutils/objcopy --set-section-flags .text=a lloc,data tmpdir/bintest.o tmpdir/copy.o Executing on host: /home/gnu/binutils-2.17.50/objdir/binutils/objcopy --set-se ction-flags .text=alloc,data tmpdir/bintest.o tmpdir/copy.o (timeout = 300) /home/gnu/binutils-2.17.50/objdir/binutils/objdump -h tmpdir/copy.o > tmpdir/d ump.out extra regexps in /xxx/gnu/binutils-2.17.50/src/binutils/testsuite/binutils-all/ copy-3.d starting with "^ [0-9]* .text.*$" EOF from tmpdir/dump.out FAIL: copy with setting section flags 3 #/home/gnu/binutils-2.17.50/objdir/binutils/objdump -h tmpdir/copy.o tmpdir/copy.o: file format som Sections: Idx Name Size VMA LMA File off Algn 0 $TEXT$0008 01ec 2**3 1 $CODE$0008 01ec 2**3 CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE 2 $LIT$ 01f4 2**3 ALLOC, LOAD, READONLY, CODE 3 $MILLICODE$ 01f4 2**3 ALLOC, LOAD, READONLY, CODE 4 $PRIVATE$ 0008 01f4 2**3 5 $DATA$0008 01f4 2**3 CONTENTS, ALLOC, LOAD, RELOC, DATA 6 $BSS$ 2**3 ALLOC -- Summary: FAIL: copy with setting section flags 3 Product: binutils Version: 2.18 (HEAD) Status: NEW Severity: normal Priority: P2 Component: binutils AssignedTo: unassigned at sources dot redhat dot com ReportedBy: danglin at gcc dot gnu dot org CC: bug-binutils at gnu dot org GCC build triplet: hppa2.0w-hp-hpux11.00 GCC host triplet: hppa2.0w-hp-hpux11.00 GCC target triplet: hppa2.0w-hp-hpux11.00 http://sourceware.org/bugzilla/show_bug.cgi?id=2958 --- You are receiving this mail because: --- You are on the CC list for the bug, or are watching someone who is. ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug ld/2729] ld terminated with signal 11 [Segmentation fault]
--- Additional Comments From mkoeppe at gmx dot de 2006-07-24 21:34 --- Hi Nick, > I am intrigued by the absence of the atexit symbol. Looking at the cross > reference files it appears that the Interix linker is obtainign it from a file > called wk_atexit.o. What is this file ? Is it included in the gcc linker's > command line ? Does it contain a weak definition of the atexit symbol ? yes, it is included, i.e. it's part of interix's libc.a. In between, I had a closer look at the problem, and I already had contact with Aaron W. LaFramboise who I think wrote ld's PECOFF weak linkage support. For a working interix ld there is some stuff missing in upstream bfd/ld (not just a few lines of code!), which can be obtained from the MS patches (e.g. weak alias support and shared lib support). I'm not sure why the MS patches didn't go back to upstream in 2002 or 2003. If this was appreciated now, I could help. I wrote to Aaron the text below and am currently waiting for his response. Martin I now had a closer look at my weak symbol linkage problem. First I decoded the symbol table entries for wk_atexit.o, part of libc.a, where the weak symbol "atexit" is, and which fails during link: There is an normal undefined symbol "__atexit" at index 4 in the coff symbol table. Entry 5 is the weak symbol entry "_atexit". Value=0, SectionNumber=0, Type=0, StorageClass=0x69=105= WEAK EXTERNAL, AuxSymbols=1 Entry 6 (i.e. aux entry): Tag index = 4, i.e. "__atexit" Characteristic = 3 = IMAGE_WEAK_EXTERN_SEARCH_ALIAS Currently cofflink.c says it supports only IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY, however. I think the guys at MS applied their patches before you applied your PECOFF stuff, and unfortunately, these patches didn't go back to upstream binutils. In their patches you can read some interesting comments, i.e. that they only support WEAK ALIAS, see below. It seems to me that they have added these WEAK ALIASES to PECOFF in order to be able to emulate the unix weak symbol behaviour. So maybe WEAK ALIAS support should be added to ld officially. And this seems to be compatible with LINK.EXE, too. The full MS patches are available from MS, or, if you want to, I can send them to you. ### Add support for .alias pseudo for C_NT_WEAK alias symbols. * config/obj-coff.c (obj_coff_weak): change conditional comp. (obj_coff_alias): New function. (op_pseudo_table): add it. diff -drupP --exclude-from=/M/donn/diffs/exclude.files gas.orig/config/obj-coff.c gas/conf ig/obj-coff.c --- gas.orig/config/obj-coff.c Tue Apr 11 13:03:19 2000 +++ gas/config/obj-coff.c Tue Apr 11 14:05:11 2000 @@ -217,12 +217,8 @@ obj_coff_weak (ignore) S_SET_WEAK (symbolP); #endif -#ifdef TE_PE - S_SET_STORAGE_CLASS (symbolP, C_NT_WEAK); -#else S_SET_STORAGE_CLASS (symbolP, C_WEAKEXT); -#endif - + if (c == ',') { input_line_pointer++; @@ -1437,6 +1433,78 @@ obj_coff_section (ignore) demand_empty_rest_of_line (); } +#ifdef TE_PE +/* Parse .alias directives, which is how PE does weak symbols: + An alias defines a "weak" name for an exising symbol; it does + not label an entry point directly. There are 3 types of PE + weak; we only support the alias form (IMAGE_WEAK_EXTERN_SEARCH_ALIAS) + + Syntax: .alias , + + */ + # bfd/cofflink.c: + /* PE weak symbols are aliases... we need to get the aliased +real symbol. */ + if (obj_pe(abfd) && sym.n_sclass == C_NT_WEAK) + { + /* It's a PE weak symbol (type IMAGE_WEAK_EXTERN_SEARCH_ALIAS) +That's implemented as an indirect in our parlance. +Find the aux entry, get the referenced symbol, and insert +its name. */ + + int target_idx; + union internal_auxent auxent; + + BFD_ASSERT (sym.n_numaux == 1); + + /* Read in the aux information */ + + bfd_coff_swap_aux_in (abfd, (PTR) (esym + symesz), sym.n_type, + sym.n_sclass, 0, sym.n_numaux, + (PTR) &auxent); + /* From the aux information, get the backing "strong" +local symbol index. */ + target_idx = auxent.x_sym.x_tagndx.l; + + /* Check for IMAGE_WEAK_EXTERN_SEARCH_ALIAS; it's all +we currently support. (See the 3/98 or later PE docs; +there used to be only two types.) */ + BFD_ASSERT (auxent.x_sym.x_misc.x_fsize == 3); + + /* Now that we've caught it... + +For the moment (unless/until proven otherwise) we'll +assume the real symbol is already declared in this +file (possibly as an U