diff --git a/doc/source/build.rst b/doc/source/build.rst index 2bda6bf544..dbd2f86425 100644 --- a/doc/source/build.rst +++ b/doc/source/build.rst @@ -442,10 +442,10 @@ differ between target configurations). cfront layout), and is a good starting point even on architectures other than IA-64 (Itanium). This ABI is used by many versions of g++ (3.2 and later). For a complete specification, see - ``www.codesourcery.com/cxx-abi``. See also other macro names - beginning with ``IA64_ABI``, some of which enable compatibility with - the ARM EABI variant of the ``IA64_ABI``. If ``IA64_ABI`` is set to - FALSE (or 0), a cfront-like ABI is used instead. + https://itanium-cxx-abi.github.io/cxx-abi/. See also other macro + names beginning with ``IA64_ABI``, some of which enable compatibility + with the ARM EABI variant of the ``IA64_ABI``. If ``IA64_ABI`` is set + to FALSE (or 0), a cfront-like ABI is used instead. * - | ``DEFAULT_GNU_ABI_VERSION`` | ``DEFAULT_EMULATE_GNU_ABI_BUGS`` | diff --git a/doc/source/class_decl.rst b/doc/source/class_decl.rst index bb11902406..282a7206a9 100644 --- a/doc/source/class_decl.rst +++ b/doc/source/class_decl.rst @@ -1458,7 +1458,7 @@ based on specifications drafted by a group of vendors for the 64-bit Itanium Architecture of Intel. At the time of this writing, the latter specifications can be found at: - `www.codesourcery.com/cxx-abi `__ + ``_ The implementation of both models can be found in ``layout.c``. Where convenient, the same routines are used to implement the two models (e.g., there diff --git a/doc/source/lower_il.rst b/doc/source/lower_il.rst index d662f3e972..fcf36e7daf 100644 --- a/doc/source/lower_il.rst +++ b/doc/source/lower_il.rst @@ -169,14 +169,15 @@ facto* standard. The variants of the cfront-like ABI are: and the IA-64 ABI (see below) is a better choice. As of version 3.1, the front end also supports the IA-64 ABI, described by -www.codesourcery.com/cxx-abi/abi.html. This is a modern ABI originally -designed for the Intel IA-64 ("Itanium") architecture, but now an industry -standard widely used on other architectures as well. In particular, the GNU -g++ compiler uses the IA-64 ABI on many platforms. This ABI is selected by -setting ``IA64_ABI`` to TRUE. Note that the fully-lowered implementation of -exception handling provided by EDG works with the IA-64 ABI, but does not -conform to the spec, and that versions using the C-generating back end do not -fully conform because of some layout cases not easily represented in C. +https://itanium-cxx-abi.github.io/cxx-abi/abi.html. This is a modern ABI +originally designed for the Intel IA-64 ("Itanium") architecture, but now an +industry standard widely used on other architectures as well. In particular, +the GNU g++ compiler uses the IA-64 ABI on many platforms. This ABI is +selected by setting ``IA64_ABI`` to TRUE. Note that the fully-lowered +implementation of exception handling provided by EDG works with the IA-64 ABI, +but does not conform to the spec, and that versions using the C-generating back +end do not fully conform because of some layout cases not easily represented in +C. Note that the IA-64 ABI requires linker support in the form of a feature (often called COMDAT) that allows different object files to contain (identical) @@ -978,8 +979,8 @@ IA-64 ABI name mangling ^^^^^^^^^^^^^^^^^^^^^^^ In the IA-64 ABI, name mangling is done according to the ABI spec -(www.codesourcery.com/cxx-abi/abi.html). We will not repeat that description -here. +(https://itanium-cxx-abi.github.io/cxx-abi/abi.html). We will not repeat that +description here. There is no compression *per se* in the IA-64 ABI name mangling scheme. Instead, entities that have appeared earlier in a mangled name can be diff --git a/src/host_envir.h b/src/host_envir.h index 99b2f9fa58..9d850c3557 100644 --- a/src/host_envir.h +++ b/src/host_envir.h @@ -841,7 +841,7 @@ because of some ordering problems. TRUE if the IA-64 ABI should be used. This is a "modern" C++ object layout standard (unlike the cfront ABI), and is a good starting point even on architectures other than IA-64 (it's the default for a lot -of 3.x versions of g++). See www.codesourcery.com/cxx-abi/. +of 3.x versions of g++). See https://itanium-cxx-abi.github.io/cxx-abi/. This is really a target configuration macro, but it needs to be here because of some ordering problems.