History log of /haiku-buildtools/gcc/gcc/config/i386/haiku64.h
Revision Date Author Comments
# 661fb7cf 28-Feb-2016 Jérôme Duval <jerome.duval@gmail.com>

gcc4: revert partially 419211519c79edc7af6fca9c6a3233129ec54d7d.

"* LINK_SPEC: Pass "-shared" to the linker only if it was passed to gcc; output
position-independent executables by default;" is reverted to workaround a
link failure on gcc4 with binutils 2.26: add-ons objects would fail to link
against an executable (being no more a shared object). This is possibly temporary
until the need for executable as shared objects is fully reviewed.


# 7af7a81a 04-Nov-2015 Simon South <ssouth@simonsouth.com>

gcc2, gcc4: Correct LINK_SPEC

Correct LINK_SPEC so it

* Sets appropriate dynamic-link options for any type of dynamically
linked executable, not only position-independent ones.
* Does not omit these options if "-pie" is specified by the user.
* Recognizes the "-static" option.
* Includes a hyphen previously missing from "--no-undefined".

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>


# 0b1666cc 24-Oct-2015 Simon South <ssouth@simonsouth.com>

binutils: ld: Set ELF interpreter to "/system/runtime_loader"

For x86_64 this includes defining a new linker emulation, "elf_x86_64_haiku"
(to match the existing "elf_i386_haiku") and updating gcc accordingly.

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>


# bfa81594 22-Oct-2015 Simon South <ssouth@simonsouth.com>

gcc: LINK_SPEC: Gently refactor

Update LINK_SPEC (for arm, i386, x86_64 and ppc) with more compact but
functionally equivalent sequences.

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>


# aff4b186 22-Oct-2015 Simon South <ssouth@simonsouth.com>

gcc: CC1_SPEC, LINK_SPEC: Wrap lines at 80 columns

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>


# 41921151 22-Oct-2015 Simon South <ssouth@simonsouth.com>

gcc: Allow the user to build non-PI executables

* CC1_SPEC: Remove non-existent "no-fpic" command-line option; add
"fno-PIC" and "fno-PIE" as options that disable the generation of
position-independent code; use "-fPIC" by default.
* LINK_SPEC: Pass "-shared" to the linker only if it was passed to gcc; output
position-independent executables by default; when linking executables, allow
undefined symbols in shared libraries and export all symbols (to match the
behaviour of "-shared").

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>


# c700a4fe 12-Oct-2014 Jessica Hamilton <jessica.l.hamilton@gmail.com>

Don't switch on -shared if the user specifies -r.

* Follow up to btrev43090, to include platforms missed in
original commit.


# 6e7ceb81 27-Jul-2013 Alex Smith <alex@alex-smith.me.uk>

gcc: Don't default to -fomit-frame-pointer on x86_64.

This is already done on x86 using the --enable-frame-pointer option
to GCC's configure script, but that option only works for 32-bit x86.
Added an option to haiku64.h that forces it off by default for 64-bit.


# a5171ea3 10-May-2013 Jérôme Duval <jerome.duval@gmail.com>

gcc 4.7.3: fix remaining Haiku issues.


# 64e25a94 19-Nov-2011 Oliver Tappe <zooey@hirschkaefer.de>

Define __STDC_ISO_10646__ in our gccs.

* define __STDC_ISO_10646__ to '201103' in order to indicate that
Haiku's wchar_t supports the Universal Character Set (UCS) defined
by the ISO 10646 standard published in March 2011.
(cherry picked from commit 073cb9127c750d74bfb0e4812cc59c54c7f27b35)


# 86fff949 19-Apr-2013 Jerome Duval <jerome.duval@gmail.com>

import gcc 4.6.3


# cc75156e 05-Apr-2012 Alex Smith <alex@alex-smith.me.uk>

Updated the x86_64 toolchain to fix build failures and to be more correct.

* A build failure occurs as TARGET_64BIT is no longer a compile-time
constant in GCC.
* Made some changes so that generated code matches the i386 Haiku target when
generating 32-bit code, and follows the x86_64 ABI for 64-bit code.
* Added a comment stating that DEFAULT_PCC_STRUCT_RETURN needs to be defined
to follow the ABI for 32-bit code, it is ignored for 64-bit.
* Remove definition of __x86_64__, already defined by GCC's i386-c.c.
* Remove -z max-page-size from LINK_SPEC as it shouldn't be necessary: the
default page size is 2MB but this won't result in large binaries, it just
changes the alignment of the sections and would make it easier to map
binaries using large pages in the future.

Signed-off-by: Ingo Weinhold <ingo_weinhold@gmx.de>


# 5bdd342f 31-Mar-2012 Jerome Duval <jerome.duval@gmail.com>

gcc: ASM_COMMENT_START shouldn't be defined at the OS level.

* arm: ASM_COMMENT_START is defined in arm/aout.h.
* i386 and x86_64: define ASM_COMMENT_START.
* others: ASM_COMMENT_START is defined in ${arch}/${arch}.h.


# 9507ae27 07-Jan-2012 Jérôme Duval <jerome.duval@gmail.com>

import of gcc 4.5.3 (core and g++ only).


# 073cb912 19-Nov-2011 Oliver Tappe <zooey@hirschkaefer.de>

Define __STDC_ISO_10646__ in our gccs.

* define __STDC_ISO_10646__ to '201103' in order to indicate that
Haiku's wchar_t supports the Universal Character Set (UCS) defined
by the ISO 10646 standard published in March 2011.


# 8116a5d9 22-Nov-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Merged gcc4-weak-symbols branch.


git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@39570 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 215ca35b 27-Jul-2010 Oliver Tappe <zooey@hirschkaefer.de>

* revert 37775, as the define has a wrong value and it's probably better to do
stuff like this somewhere in our libc headers.

git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@37779 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 735af2d6 27-Jul-2010 Oliver Tappe <zooey@hirschkaefer.de>

* added standard define __STDC_ISO_10646__ to all compiler configurations,
indicating that haiku uses ISO_10646 in wchar_t (in our case: UTF-32)


git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@37775 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b363ec1b 14-Jul-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Patch by Nathan Mentley: Fixed multilib generation for x86-64.


git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@37521 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3df1e72e 11-May-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Patch by Nathan Mentley: Added initial support for Haiku x86_64.


git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@36793 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c700a4fe642f3dad034b9735b4a780bd337b73c1 12-Oct-2014 Jessica Hamilton <jessica.l.hamilton@gmail.com>

Don't switch on -shared if the user specifies -r.

* Follow up to btrev43090, to include platforms missed in
original commit.


# 6e7ceb81be0897475e261e3ecaf820b45dc79c24 27-Jul-2013 Alex Smith <alex@alex-smith.me.uk>

gcc: Don't default to -fomit-frame-pointer on x86_64.

This is already done on x86 using the --enable-frame-pointer option
to GCC's configure script, but that option only works for 32-bit x86.
Added an option to haiku64.h that forces it off by default for 64-bit.


# a5171ea3465e20f1f54ea7ffbe06a9bb2fb70c84 10-May-2013 Jérôme Duval <jerome.duval@gmail.com>

gcc 4.7.3: fix remaining Haiku issues.


# 64e25a94754142bffaca347d7750694976d9c7e6 19-Nov-2011 Oliver Tappe <zooey@hirschkaefer.de>

Define __STDC_ISO_10646__ in our gccs.

* define __STDC_ISO_10646__ to '201103' in order to indicate that
Haiku's wchar_t supports the Universal Character Set (UCS) defined
by the ISO 10646 standard published in March 2011.
(cherry picked from commit 073cb9127c750d74bfb0e4812cc59c54c7f27b35)


# 86fff949210400f2738c5899ce466e3573be5575 19-Apr-2013 Jerome Duval <jerome.duval@gmail.com>

import gcc 4.6.3


# cc75156e51a0824ebb1ff1af6f7d451f4377e4de 05-Apr-2012 Alex Smith <alex@alex-smith.me.uk>

Updated the x86_64 toolchain to fix build failures and to be more correct.

* A build failure occurs as TARGET_64BIT is no longer a compile-time
constant in GCC.
* Made some changes so that generated code matches the i386 Haiku target when
generating 32-bit code, and follows the x86_64 ABI for 64-bit code.
* Added a comment stating that DEFAULT_PCC_STRUCT_RETURN needs to be defined
to follow the ABI for 32-bit code, it is ignored for 64-bit.
* Remove definition of __x86_64__, already defined by GCC's i386-c.c.
* Remove -z max-page-size from LINK_SPEC as it shouldn't be necessary: the
default page size is 2MB but this won't result in large binaries, it just
changes the alignment of the sections and would make it easier to map
binaries using large pages in the future.

Signed-off-by: Ingo Weinhold <ingo_weinhold@gmx.de>


# 5bdd342ffa415e91e17436d39b79d0b61d7b3826 31-Mar-2012 Jerome Duval <jerome.duval@gmail.com>

gcc: ASM_COMMENT_START shouldn't be defined at the OS level.

* arm: ASM_COMMENT_START is defined in arm/aout.h.
* i386 and x86_64: define ASM_COMMENT_START.
* others: ASM_COMMENT_START is defined in ${arch}/${arch}.h.


# 9507ae27822da1947c2e6563671168bae5936759 07-Jan-2012 Jérôme Duval <jerome.duval@gmail.com>

import of gcc 4.5.3 (core and g++ only).


# 073cb9127c750d74bfb0e4812cc59c54c7f27b35 19-Nov-2011 Oliver Tappe <zooey@hirschkaefer.de>

Define __STDC_ISO_10646__ in our gccs.

* define __STDC_ISO_10646__ to '201103' in order to indicate that
Haiku's wchar_t supports the Universal Character Set (UCS) defined
by the ISO 10646 standard published in March 2011.


# 8116a5d9ffdc704a2fe1095bd9bdac3a36ad56bb 22-Nov-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Merged gcc4-weak-symbols branch.


git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@39570 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 215ca35bee52fd27a420a1f77abdc51a89602a66 27-Jul-2010 Oliver Tappe <zooey@hirschkaefer.de>

* revert 37775, as the define has a wrong value and it's probably better to do
stuff like this somewhere in our libc headers.

git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@37779 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 735af2d623d1ffbb6f95a4fbcaeb367afddeb129 27-Jul-2010 Oliver Tappe <zooey@hirschkaefer.de>

* added standard define __STDC_ISO_10646__ to all compiler configurations,
indicating that haiku uses ISO_10646 in wchar_t (in our case: UTF-32)


git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@37775 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b363ec1bd94f0d4c0479ba6b00a7e2e805460765 14-Jul-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Patch by Nathan Mentley: Fixed multilib generation for x86-64.


git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@37521 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3df1e72ed0d835f771e5452bd12daeabf72d4ac4 11-May-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Patch by Nathan Mentley: Added initial support for Haiku x86_64.


git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@36793 a95241bf-73f2-0310-859d-f6bbb57e9c96