[Bug ld/6924] New: ld does not understand DWARF version 3 when trying to get a source line number
Using ld version 2.18 when linking a PGI 7.2-5 compiled program, I see the following dwarf error: $ cat datatypes.module.f90 module datatypes integer, parameter :: short = 1 end module datatypes $ cat main.f90 program TEST use datatypes end program TEST $ pgf90 -Mdwarf3 -g -c datatypes.module.f90 $ pgf90 -Mdwarf3 -g -c main.f90 $ pgf90 -Mdwarf3 main.o /usr/bin/ld: Dwarf Error: found dwarf version '3', this reader only handles version 2 information. main.o:(.debug_info+0x74): undefined reference to `..Dm_datatypes' $ The undefined reference error is a PGI compiler error, so that can be ignored. The message: Dwarf Error: found dwarf version '3', this reader only handles version 2 information. is occurring when the loader is trying to get the line number for the undefined reference error. 'ld' should at least be able to get the source line number for a code in Dwarf 3 format. -- Summary: ld does not understand DWARF version 3 when trying to get a source line number Product: binutils Version: 2.18 Status: NEW Severity: normal Priority: P2 Component: ld AssignedTo: unassigned at sources dot redhat dot com ReportedBy: geir at cray dot com CC: bug-binutils at gnu dot org http://sourceware.org/bugzilla/show_bug.cgi?id=6924 --- 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/3191] Dwarf 2 reader in linker doesn't suppor DW_FORM_ref_addr
-- What|Removed |Added CC||geir at cray dot com http://sourceware.org/bugzilla/show_bug.cgi?id=3191 --- 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/17843] GAS 2.24.0 incorrectly rejects a legal asm sequence
https://sourceware.org/bugzilla/show_bug.cgi?id=17843 Geir Johansen geir at cray dot com changed: What|Removed |Added Component|binutils|gas -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug binutils/17843] New: GAS 2.24.0 incorrectly rejects a legal asm sequence
https://sourceware.org/bugzilla/show_bug.cgi?id=17843 Bug ID: 17843 Summary: GAS 2.24.0 incorrectly rejects a legal asm sequence Product: binutils Version: 2.24 Status: NEW Severity: normal Priority: P2 Component: binutils Assignee: unassigned at sourceware dot org Reporter: geir at cray dot com GAS 2.24.0 incorrectly rejects a legal asm sequence: $ cat test_tls.c __thread int tls_var; int get_tls_var() { return tls_var; } $ clang --target=aarch64 -S test_tls.c $ cat test_tls.s .text .filetest_tls.c .globlget_tls_var .align2 .typeget_tls_var,@function get_tls_var:// @get_tls_var // BB#0:// %entry movzx8, #:tprel_g1:tls_var movkx8, #:tprel_g0_nc:tls_var mrsx9, TPIDR_EL0 ldr w10, [x9, x8] mov w0, w10 ret .Ltmp1: .sizeget_tls_var, .Ltmp1-get_tls_var .typetls_var,@object // @tls_var .section.tbss,awT,@nobits .globltls_var .align2 tls_var: .word0 // 0x0 .sizetls_var, 4 .identclang version 3.5.0 (tags/RELEASE_350/final) $ aarch64-linux-gnu-as test_tls.s test_tls.s: Assembler messages: test_tls.s:9: Error: the specified relocation type is not allowed for MOVK at operand 2 -- `movk x8,#:tprel_g0_nc:tls_var' $ -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/20614] New: gas missing full operand support for vpbroadcastb and vpbroadcastw instructions
https://sourceware.org/bugzilla/show_bug.cgi?id=20614 Bug ID: 20614 Summary: gas missing full operand support for vpbroadcastb and vpbroadcastw instructions Product: binutils Version: unspecified Status: UNCONFIRMED Severity: normal Priority: P2 Component: gas Assignee: unassigned at sourceware dot org Reporter: geir at cray dot com Target Milestone: --- This does not assemble with the latest gas from git/master (commit d2dfe70): .text .globl main .p2align6, 0x90 .type main,@function main: vpbroadcastb%al, %ymm0 vpbroadcastw%ax, %ymm1 vpbroadcastb%eax, %ymm2 vpbroadcastw%eax, %ymm3 retq The first two vpbroadcast instructions fail with "invalid operand" while the second two get through. I checked the opcodes table in the latest master binutils and it only supports GR32 and GR64 source registers for these instructions. I see nothing in the Intel documentation that restricts these instructions to only take 32- and 64-bit GPRs. As far as I can tell encodings for 8- and 16-bit GPR sizes are legal. It's certainly possible I missed some subtlety and if so it would be helpful to have a better understanding of why these operand sizes aren't supported. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/22445] New: Error: no such instruction: `vpcmplew
https://sourceware.org/bugzilla/show_bug.cgi?id=22445 Bug ID: 22445 Summary: Error: no such instruction: `vpcmplew Product: binutils Version: 2.21 Status: UNCONFIRMED Severity: normal Priority: P2 Component: gas Assignee: unassigned at sourceware dot org Reporter: geir at cray dot com Target Milestone: --- The B and W variants of the 'vpcmple' psuedo-op instruction is not supported. The Intel ISA indicate that they should be supported. Test case: $ cat fail.s .file "junk.c" .text .globl foo .type foo, @function foo: .LFB0: .cfi_startproc vpcmplew %ymm0,%ymm1,%k1 ret .cfi_endproc .LFE0: .size foo, .-foo .ident "GCC: (GNU) 7.2.0 20170814 [scrubbed]" .section.note.GNU-stack,"",@progbits $ as --version GNU assembler (GNU Binutils; SUSE Linux Enterprise 12) 2.26.1 Copyright (C) 2015 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License version 3 or later. This program has absolutely no warranty. This assembler was configured for a target of `x86_64-suse-linux'. $ as fail.s fail.s: Assembler messages: fail.s:8: Error: no such instruction: `vpcmplew %ymm0,%ymm1,%k1' $ The D and Q variants of this instruction are accepted by GAS. $ cat work.s .file "junk.c" .text .globl foo .type foo, @function foo: .LFB0: .cfi_startproc vpcmpleq %ymm0,%ymm1,%k1 ret .cfi_endproc .LFE0: .size foo, .-foo .ident "GCC: (GNU) 7.2.0 20170814 [scrubbed]" .section.note.GNU-stack,"",@progbits $ as work.s $ -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug ld/24920] Executable produces nonsensical error message after statically linking with trying to link in a dynamic library.
https://sourceware.org/bugzilla/show_bug.cgi?id=24920 --- Comment #3 from Geir Johansen --- Problem still occurs with somewhat more recent software: $ gcc --version gcc (GCC) 9.2.0 20190812 (Cray Inc.) Copyright (C) 2019 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ gcc -c hello.c $ ld --version GNU ld (GNU Binutils) 2.32 Copyright (C) 2019 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License version 3 or (at your option) a later version. This program has absolutely no warranty. $ ld -m elf_x86_64 -static /usr/lib64/crt1.o /usr/lib64/crti.o /opt/gcc/9.2.0/snos/lib/gcc/x86_64-suse-linux/9.2.0/crtbeginT.o -L/opt/gcc/9.2.0/snos/lib/gcc/x86_64-suse-linux/9.2.0 -L/opt/gcc/9.2.0/snos/lib/lib64 hello.o --start-group -lgcc -lgcc_eh -lc --end-group /opt/gcc/9.2.0/snos/lib/gcc/x86_64-suse-linux/9.2.0/crtend.o /usr/lib64/crtn.o -Bdynamic /lib64/libaio.so.1 $ ./a.out -bash: ./a.out: No such file or directory $ file a.out a.out: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld6, for GNU/Linux 3.2.0, with debug_info, not stripped $ ldd a.out linux-vdso.so.1 (0x7ffc5a318000) libaio.so.1 => /lib64/libaio.so.1 (0x7f1372c2c000) libc.so.6 => /lib64/libc.so.6 (0x7f1372872000) /lib/ld64.so.1 => /lib64/ld-linux-x86-64.so.2 (0x7f1372e2e000) $ -- You are receiving this mail because: You are on the CC list for the bug.