NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
toolchain/52427: VAX text relocations
>Number: 52427
>Category: toolchain
>Synopsis: VAX text relocations
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: toolchain-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Jul 25 07:50:00 +0000 2017
>Originator: Martin Husemann
>Release: NetBSD 8.99.1
>Organization:
The NetBSD Foundation, Inc.
>Environment:
System: NetBSD dead-to-the-world.duskware.de 8.99.1 NetBSD 8.99.1 (DEAD) #7: Sun Jul 23 12:04:50 CEST 2017 martin%seven-days-to-the-wolves.aprisoft.de@localhost:/work/src/sys/arch/vax/compile/DEAD vax
Architecture: vax
Machine: vax
>Description:
After my recent fixes to compiler_rt, perl is buildable on VAX again.
But:
> perl -e 'print "hello\n";'
/usr/pkg/lib/perl5/5.26.0/vax-netbsd-thread-multi/CORE/libperl.so: text relocations
hello
Looking at the relocations show they are all of the form:
R_VAX_RELATIVE *ABS*+0x6967c
and seem to be part of big switch/case things. The first looks like this:
5ca00: 31 de db brw 5a5e1 <Perl_yylex+0x2e6f>
5ca03: cf 50 00 0a casel r0,$0x0,$0xa
5ca07: 27 11 38 45 divp $0x11,$0x38,$0x14[r5],*0xffffd214(r2),*0x46
(r0),*0x46(r0)
5ca0b: 14 d2 14 d2
5ca0f: b0 46 b0 46
5ca13: 95 12 tstb $0x12
5ca15: 95 12 tstb $0x12
5ca17: 19 00 blss 5ca19 <Perl_yylex+0x52a7>
5ca19: 14 d2 bgtr 5c9ed <Perl_yylex+0x527b>
5ca1b: 38 45 31 06 editpc $0x31[r5],$0x6,$0x0,$0x17
5ca1f: 00 17
5ca21: 9f cf 76 06 pushab 5d09b <Perl_yylex+0x5929>
5ca22: R_VAX_RELATIVE *ABS*+0x676cf
5ca25: 00 halt
5ca26: dd 5a pushl r10
5ca28: fb 01 ff bd calls $0x1,*1a60ec <_GLOBAL_OFFSET_TABLE_+0xea0>
5ca2c: 96 14 00
All others look like a jump table:
5cdd1: 17 9f 30 6c jmp *0x66c30
5cdd5: 06 00
5cdd3: R_VAX_RELATIVE *ABS*+0x66c30
5cdd7: 17 9f 7c 96 jmp *0x6967c
5cddb: 06 00
5cdd9: R_VAX_RELATIVE *ABS*+0x6967c
5cddd: 17 9f a8 71 jmp *0x671a8
5cde1: 06 00
Is this a binutils or gcc issue? Is it avoidable? If not, should we make
ld.elf_so quiet about it on VAX?
>How-To-Repeat:
Build perl on vax and use it.
>Fix:
n/a
Home |
Main Index |
Thread Index |
Old Index