mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-15 14:50:52 +08:00
Patch ieee128-lib-patch001b
This commit is contained in:
parent
438085cc66
commit
f1d82734ec
gcc
@ -1,3 +1,11 @@
|
||||
2020-05-05 Michael Meissner <meissner@linux.ibm.com>
|
||||
|
||||
(ieee128-lib-patch001b)
|
||||
PR target/94630
|
||||
* config/rs6000/rs6000.c (rs6000_mangle_decl_assembler_name): Do
|
||||
the mapping for <name>l to <name>f128 when the long double default
|
||||
is IEEE 128-bit.
|
||||
|
||||
2020-05-05 Michael Meissner <meissner@linux.ibm.com>
|
||||
|
||||
Clone branch
|
||||
|
@ -26326,13 +26326,15 @@ rs6000_globalize_decl_name (FILE * stream, tree decl)
|
||||
library before you can switch the real*16 type at compile time.
|
||||
|
||||
We use the TARGET_MANGLE_DECL_ASSEMBLER_NAME hook to change this name. We
|
||||
only do this if the default is that long double is IBM extended double, and
|
||||
the user asked for IEEE 128-bit. */
|
||||
only do this transformation if the __float128 type is enabled. This
|
||||
prevents us from doing the transformation on older 32-bit parts that might
|
||||
have enabled using IEEE 128-bit floating point as the default long double
|
||||
type. */
|
||||
|
||||
static tree
|
||||
rs6000_mangle_decl_assembler_name (tree decl, tree id)
|
||||
{
|
||||
if (!TARGET_IEEEQUAD_DEFAULT && TARGET_IEEEQUAD && TARGET_LONG_DOUBLE_128
|
||||
if (TARGET_FLOAT128_TYPE && TARGET_IEEEQUAD && TARGET_LONG_DOUBLE_128
|
||||
&& TREE_CODE (decl) == FUNCTION_DECL && DECL_IS_BUILTIN (decl) )
|
||||
{
|
||||
size_t len = IDENTIFIER_LENGTH (id);
|
||||
|
Loading…
x
Reference in New Issue
Block a user