Source-Changes-D archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
re: CVS commit: src/usr.bin/crunch/crunchgen
Joerg Sonnenberger writes:
> On Tue, Feb 12, 2019 at 10:16:58AM +0000, matthew green wrote:
> > Module Name: src
> > Committed By: mrg
> > Date: Tue Feb 12 10:16:58 UTC 2019
> >
> > Modified Files:
> > src/usr.bin/crunch/crunchgen: crunchgen.c
> >
> > Log Message:
> > hack alert time:
> >
> > on sparc and sparc64, don't remove .eh_frame section. it leads
> > to failure as something is referenced, and objcopy ends up
> > emitting a broken binary that can't be run -- it attempts to
> > load at va=0, beyond having missing referenced data.
> >
> > also, on sparc64 also don't remove .note.netbsd.mcmodel.
> >
> > the former should be revised when we can avoid it.
>
> The real bug is the reverted varasm.c change. GCC creates the .eh_frame
> section with the wrong permissions.
yes - putting your varasm.c back fixes the crtbegin.o
build, but it breaks the libstdc++ one:
In file included from /usr/src4/external/gpl3/gcc/dist/libstdc++-v3/src/c++98/pool_allocator.cc:31:0:
/usr/src4/external/gpl3/gcc/dist/libstdc++-v3/include/ext/pool_allocator.h:210:5: error: only zero initializers are allowed in section '.bss._ZN9__gnu_cxx12__pool_allocIwE12_S_force_newE'
__pool_alloc<_Tp>::_S_force_new;
^~~~~~~~~~~~~~~~~
i'm not sure how to solve this -- we apparently want both
behaviours with GCC 7. uwe@ suggested an explicit asm()
or .S file for the crtbegin issue.
.mrg.
Home |
Main Index |
Thread Index |
Old Index