[PATCH] Add support for non-contiguous memory regions

Christophe Lyon christophe.lyon@linaro.org
Mon Mar 9 13:10:30 GMT 2020


Ping?

https://sourceware.org/pipermail/binutils/2020-February/109942.html

Christophe


On Fri, 28 Feb 2020 at 18:30, Christophe Lyon
<christophe.lyon@linaro.org> wrote:
>
> Hi,
>
> Here is an updated patch.
>
> Changes between v4 and v5:
> * Added sanity checks for powerpc64 and xtensa
> (--enable-non-contiguous-regions does not work with relaxation), to
> emit an error message rather than crash
> * Removed a bogus assert in size_input_section
> * Added quotes around section names in error messages
> * Updated tests:
> - ld-arm/non-contiguous-arm[25] now pass on arm-nacl
> - ld-arm/non-contiguous-arm[36] are now skipped on arm-nacl because
> the stub code is different from the expected one and a dedicated test
> didn't seem mandatory
> - ld-arm/non-contiguous-arm4 updated expected error message
> - ld-elf/non-contiguous: do not require little-endian, accept both
> endiannesses, discard target-specific sections to make expected output
> matching possible. Skip on xtensa where relaxation is enabled by
> default and conflicts with the new option
> - ld-powerpc/non-contiguous-powerpc: skip on powerpc64 (because the
> error message is different)
> - ld/powerpc/non-contiguous-powerpc64: new test, with the error
> message expected on powerpc64
> * Squashed all patches into one
>
> Tested for non-regression on the list of 163 targets provided by Alan.
> I left the error on mep-elf, because many other tests fails on that
> target with the same error message (selected target format
> 'elf32-mep-little' unknown)
>
> Christophe
>
>
> On Thu, 20 Feb 2020 at 09:59, Christophe Lyon
> <christophe.lyon@linaro.org> wrote:
> >
> > On Thu, 20 Feb 2020 at 09:15, Alan Modra <amodra@gmail.com> wrote:
> > >
> > > On Thu, Feb 20, 2020 at 05:37:03AM +0100, Christophe Lyon wrote:
> > > > Or should I just copy & paste that list from your email and
> > > > for i in <that-list>
> > > > do
> > > >   configure --target=$i
> > > >   make all check
> > > > done
> > >
> > > Yes, more or less.  No need to build gdb though for binutils changes,
> > > unless you're messing with libbfd or libopcodes API.  I build with
> > > --disable-nls --enable-plugins \
> > > --disable-gdb --disable-gdbserver --disable-sim --disable-readline \
> > > --disable-libdecnumber --enable-obsolete --target=$i
> > > Parallel builds work too, except for m68hc11 and m68hc12 which write
> > > to source directories.
> > >
> > > I also build --enable-targets=all --enable-nls with a recent 64-bit
> > > gcc, an older gcc, and with gcc -m32 to pick up any 32 bit problems.
> > > My current target list is:
> > >
> > Thanks, I'm looking at all these targets, then. I'll update my patches
> > as needed.
> >
> >
> > > aarch64-elf
> > > aarch64-linux
> > > aarch64_be-linux-gnu_ilp32
> > > alpha-dec-vms
> > > alpha-linux
> > > alpha-linuxecoff
> > > alpha-netbsd
> > > alpha-unknown-freebsd4.7
> > > am33_2.0-linux
> > > arc-elf
> > > arc-linux-uclibc
> > > arm-elf
> > > arm-linuxeabi
> > > arm-nacl
> > > arm-netbsdelf
> > > arm-nto
> > > arm-pe
> > > arm-symbianelf
> > > arm-vxworks
> > > arm-wince-pe
> > > armeb-linuxeabi
> > > avr-elf
> > > bfin-elf
> > > bfin-linux-uclibc
> > > bpf-none
> > > cr16-elf
> > > cris-elf
> > > cris-linux
> > > crisv32-linux
> > > crx-elf
> > > csky-elf
> > > csky-linux
> > > d10v-elf
> > > d30v-elf
> > > dlx-elf
> > > epiphany-elf
> > > fr30-elf
> > > frv-elf
> > > frv-linux
> > > ft32-elf
> > > h8300-elf
> > > h8300-linux
> > > hppa-hp-hpux10
> > > hppa-linux
> > > hppa64-hp-hpux11.23
> > > hppa64-linux
> > > i386-bsd
> > > i386-darwin
> > > i386-lynxos
> > > i586-linux
> > > i686-nacl
> > > i686-nto
> > > i686-pc-beos
> > > i686-pc-elf
> > > i686-pe
> > > i686-vxworks
> > > ia64-elf
> > > ia64-freebsd5
> > > ia64-hpux
> > > ia64-linux
> > > ia64-netbsd
> > > ia64-vms
> > > ip2k-elf
> > > iq2000-elf
> > > lm32-elf
> > > lm32-linux
> > > m32c-elf
> > > m32r-elf
> > > m32r-linux
> > > m68hc11-elf
> > > m68hc12-elf
> > > m68k-elf
> > > m68k-linux
> > > mcore-elf
> > > mcore-pe
> > > mep-elf
> > > metag-linux
> > > microblaze-elf
> > > microblaze-linux
> > > mips-linux
> > > mips-sgi-irix6
> > > mips-vxworks
> > > mips64-linux
> > > mips64-openbsd
> > > mips64el-openbsd
> > > mipsel-linux-gnu
> > > mipsisa32el-linux
> > > mipstx39-elf
> > > mmix
> > > mn10200-elf
> > > mn10300-elf
> > > moxie-elf
> > > msp430-elf
> > > mt-elf
> > > nds32be-elf
> > > nds32le-linux
> > > nios2-linux
> > > ns32k-netbsd
> > > ns32k-pc532-mach
> > > or1k-elf
> > > or1k-linux
> > > pdp11-dec-aout
> > > pj-elf
> > > powerpc-aix5.1
> > > powerpc-aix5.2
> > > powerpc-eabisim
> > > powerpc-eabivle
> > > powerpc-freebsd
> > > powerpc-linux
> > > powerpc-nto
> > > powerpc-wrs-vxworks
> > > powerpc64-freebsd
> > > powerpc64-linux
> > > powerpc64le-linux
> > > powerpcle-cygwin
> > > powerpcle-elf
> > > pru-elf
> > > riscv32-elf
> > > riscv64-linux
> > > rl78-elf
> > > rs6000-aix4.3.3
> > > rs6000-aix5.1
> > > rs6000-aix5.2
> > > rx-elf
> > > s12z-elf
> > > s390-linux
> > > s390x-linux
> > > score-elf
> > > sh-linux
> > > sh-nto
> > > sh-pe
> > > sh-rtems
> > > sh-vxworks
> > > shle-unknown-netbsdelf
> > > sparc-elf
> > > sparc-linux
> > > sparc-sun-solaris2
> > > sparc-vxworks
> > > sparc64-linux
> > > spu-elf
> > > tic30-unknown-coff
> > > tic4x-coff
> > > tic54x-coff
> > > tic6x-elf
> > > tilegx-linux
> > > tilepro-linux
> > > v850-elf
> > > vax-netbsdelf
> > > visium-elf
> > > wasm32
> > > x86_64-cloudabi
> > > x86_64-linux
> > > x86_64-nacl
> > > x86_64-pc-linux-gnux32
> > > x86_64-rdos
> > > x86_64-w64-mingw32
> > > xc16x-elf
> > > xgate-elf
> > > xstormy16-elf
> > > xtensa-elf
> > > z80-coff
> > > z80-elf
> > > z8k-coff
> > >
> > > --
> > > Alan Modra
> > > Australia Development Lab, IBM



More information about the Binutils mailing list