| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
stack unwinding, instead of naively trying to check the instruction at
that location. This fixes signal handling in threaded applications after
recent changes regarding unwinding in libthr. While here, clean up our
MD_FROB_UPDATE_CONTEXT() implementation a little.
|
|
|
|
|
|
| |
segfaults when building with clang.
This comes (partly) from the LLVM svn r41105.
|
|
|
|
|
|
| |
avoid segfaults when building with clang.
Permission to backport given by Jan hubicka <jh at suse.cz>.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
o force_to_data
o __CTOR_LIST__
o __do_global_dtors_aux_fini_array_entry
o __frame_dummy_init_array_entry
This is necessary because Clang is smart enough to optimize out these
variables was they were marked as __unused__ (and they are also static).
The end result was programs segfaulting because these symbols weren't
present.
This follows the upstream revision 159228 and the author of that
revision (Jan Hubicka <jh at suse.de>) allowed us to backport this to our
GPLv2 GCC.
Discussed with: core
|
|
|
|
|
|
|
|
| |
put them back in again. Also, clang only complained about the lvalue
cast.
Submitted by: Dimitry Andric <dimitry at andric.com>
Pointed out: bde
|
|
|
|
|
|
|
|
|
| |
which are apparently "heinous" GNU extensions, so clang can
compile this without using the -fheinous-gnu-extensions option.
Results in *no* binary change, neither with clang, nor with gcc.
Submitted by: Dimitry Andric <dimitry at andric.com>
|
|
|
|
|
|
|
|
| |
a variety of bugs in binutils related to handling of 64-bit PPC ELF,
provides a GCC configuration for 64-bit PowerPC on FreeBSD, and
associated build systems tweaks.
Obtained from: projects/ppc64
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
o) Add TARGET_ABI to the MIPS toolchain build process. This sets the default
ABI to one of o32, n32 or n64. If it is not set, o32 is assumed as that is
the current default.
o) Set the default GCC cpu type to any specified TARGET_CPUTYPE. This is
necessary to have a working "cc" if e.g. mips64 is specified, as binutils
will refuse to link objects using different ISAs in some cases.
o) Add support for n32 and n64 ABIs to binutils and GCC.
o) Add additional required libgcc2 stubs for n32 and n64.
o) Add support for the "mips64r2" architecture to GCC. Add the "octeon"
o) When static linking, wrap default libraries in --start-group and
--end-group. This is required for static linking to work on n64 with the
interdependencies between libraries there. This is what other OSes that
support n64 seem to do, as well.
o) Fix our GCC spec to define __mips64 for 64-bit targets, not __mips64__, the
former being what libgcc, etc., check and the latter seemingly being a
misspelling of a hand merge from a Linux spec.
o) When no TARGET_CPUTYPE is specified at build time, make GCC take the default
ISA from the ABI. Our old defaults were too liberal and assumed that 64-bit
ABIs should default to the MIPS64 ISA and that 32-bit ABIs should default to
the MIPS32 ISA, when we are supporting or will support some systems based on
earlier 32-bit and 64-bit ISAs, most notably MIPS-III.
o) Merge a new opcode file (and support code) from a later version of binutils
and add flags and code necessary to support Octeon-specific instructions.
This should also make merging opcodes for other modern architectures easier.
Reviewed by: imp
|
|
|
|
| |
Correct a typo.
|
|
|
|
|
|
|
| |
the linker spec. Provide the ability to have a default ABI that's
different than o32 (again, for all 4).
Submitted by: C. Jayachandran (JC) with tweaks for o64/o32 by me
|
|
|
|
| |
Submitted by: jmallet@
|
|
|
|
|
|
|
|
|
| |
a few #defines from JC.
# tested only with o32 at the moment
Submitted by: C. Jayachandran (CJ)
Obtained from: NetBSD
|
|
|
|
|
|
| |
r194519 | gonzo | 2009-06-19 17:28:26 -0600 (Fri, 19 Jun 2009) | 3 lines
- set -mabicalls and -msoft-float as a default in order to
simplify building ports
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Scrt1.o instead of crt1.o, since the later is built as non-PIC.
Separate i386-elf crt1.c into the pure assembler part and C code,
supplying all data extracted by assembler stub as explicit parameters [1].
Hide and localize _start1 symbol used as an interface between asm and
C code.
In collaboration with: kan
Inspired by: PR i386/127387 [1]
Prodded and tested by: rdivacky [1]
MFC after: 3 weeks
|
|
|
|
|
|
|
|
|
|
| |
on "i386". Doing it in the compiler is deemed to be less fragile then
attempting to provide a default -march setting via bsd.cpu.mk. FreeBSD
itself has not supported plain 386 CPUs since 5.x.
Suggested by: kan
Requested by: rdivacky
MFC after: 1 month
|
|
|
|
|
|
|
|
|
|
|
| |
of just blowing up. A very similar change to this exists which is
GPLv3 licensed, this is my own change.
This problem was triggered by running the Boost regression tests.
See also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31899
Reviewed by: luigi
Approved by: re (kib)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
compiled with stack protector.
Use libssp_nonshared library to pull __stack_chk_fail_local symbol into
each library that needs it instead of pulling it from libc. GCC
generates local calls to this function which result in absolute
relocations put into position-independent code segment, making dynamic
loader do extra work every time given shared library is being relocated
and making affected text pages non-shareable.
Reviewed by: kib
Approved by: re (kib)
|
|
|
|
|
|
|
| |
inline function support. This should fix instances where gcc
spuriously reports the following error:
error: nested function 'foo' declared but never defined
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
original intent, but the functionality wasn't implemented until after
gcc 4.2 was released. However, if you compiled a program that would
behave differently before and after this change, gcc 4.2 would have
warned you; hence, everything currently in the base system is
unaffected by this change. This patch also adds additional warnings
about certain inline function-related bogosity, e.g., using a
static non-const local variable in an inline function.
These changes were merged from a snapshot of gcc mainline from March
2007, prior to the GPLv3 switch. I then ran the regression test suite
from a more recent gcc snapshot and fixed the important bugs it found.
I also squelched the following warning unless -pedantic is specified:
foo is static but used in inline function bar which is not static
This is consistent with LLVM's behavior, but not consistent with gcc 4.3.
Reviewed by: arch@
|
|
|
|
|
|
| |
doesn't already have a definition.
Reported by: imp
|
| |
|
| |
|
| |
|
|
|
|
|
| |
parts of the configuration aren't duplicated, and arch-specific exceptions
are made "in-place". Also clean up the FreeBSD/amd64 config a little.
|
|
|
|
| |
-ffancy-math-387 and -mmath-errno.
|
|
|
|
|
|
| |
mistake of setting errno, and never has. This will need to be fixed
upstream in a more generic way, but the changes are somewhat more
involved.
|
|
|
|
|
|
|
| |
operating systems. Previously, gcc would inhibit the generation of
fsqrt, fsin, and several other floating point instructions, for the
benefit of the old in-kernel math emulator, which was removed over 5
years ago.
|
| |
|
| |
|
|\
| |
| |
| | |
which included commits to RCS files with non-trunk default branches.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
for FreeBSD as well.
This is the fix for __gthread_active_p() returning false positives
which was committed as rev. 1.1.1.8.2.1 to RELENG_7 but now looped
back to the vendor branch via the GCC repository and relicensed to
be GPLv2 by me.
Thanks go to gerald@ for getting the fix approved upstream and for
committing to the GCC repository.
PR: 119289
Approved by: core
|
|\ \
| |/
| |
| | |
which included commits to RCS files with non-trunk default branches.
|
| |
| |
| |
| |
| |
| | |
inside ABS expression).
Obtained from: Richard Guenther <rguenther@suse.de>
Approved by: core
|
| |
| |
| |
| |
| |
| |
| | |
limiting to the hardcoded equivalent of -mcpu=ultrasparc.
PR: 109510
MFC after: 3 months
|
| |
| |
| |
| |
| |
| |
| |
| | |
'-ftree-vrp' if one wants it.
Some bad code generation has been tracked to -ftree-vrp. jdk1{5,6} are
notable examples.
Approved by: re(kensmith)
|
| |
| |
| |
| | |
Approved by: re (kensmith)
|
| |
| |
| |
| | |
Approved by: re (kensmith)
|
|\ \
| |/
| |
| | |
which included commits to RCS files with non-trunk default branches.
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
out of libgcc_s.so.1 somehow and fails to record DT_NEEED dependency
when linking with profiled libraries despite --ld-as-needed option.
|
| |
| |
| |
| | |
Reviewed by: kan
|
| | |
|
| |
| |
| |
| |
| | |
separate patch is much more painful than taking this file off the
vendor branch.
|
| | |
|
| |
| |
| |
| | |
which included commits to RCS files with non-trunk default branches.
|
| | |
|
| | |
|
| | |
|
| | |
|