Current gas fails to assemble the following trivial testcase: $ cat jsr.s jsr $26,getpagesize $ gas -o jsr.o jsr.s jsr.s: Assembler messages: jsr.s:1: Fatal error: unhandled relocation type (null)
Created attachment 4735 [details] Fix segfault
Hi Rainer, I am not an expert in this particular architecture. The uploaded patch prevents the seg-fault, but the assembler now responds with: Error: invalid relocation for field Is this what you would expect ? Cheers Nick
Subject: Re: Fatal error assembling jsr for Alpha ECOFF Hi Nick, > I am not an expert in this particular architecture. The uploaded patch neither am I: I just happen to maintain the GCC port to Tru64 UNIX :-) > prevents the seg-fault, but the assembler now responds with: > > Error: invalid relocation for field > > Is this what you would expect ? Actually no: the native assembler assembles this just fine: $ as -o jsr.o jsr.s $ objdump -d jsr.o jsr.o: file format ecoff-littlealpha Disassembly of section .text: 0000000000000000 <.text>: 0: 10 80 7d a7 ldq t12,-32752(gp) 4: 00 40 5b 6b jsr ra,(t12),0x8 8: 1f 04 ff 47 nop c: 00 00 fe 2f unop It may be related to the fact that Alpha ELF gas uses explicit relocs and anything else suffers from bitrot. I'd tried to enable them for the target, but failed, cf. PR gas/11518. Thanks. Rainer
Hmm, the top-level configure disables gas and ld for alpha-dec-osf since 1999. alpha-linuxecoff prior to commit df26367c793c (ie. prior to 2.24) actually generated ELF. Poking at this bug a little makes me think alpha-linuxecoff ought to be marked obsolete.
Reality is that the target is obsolete.