From 1a025b0575e33f9715e18815f9bc55e1df83df8e Mon Sep 17 00:00:00 2001 From: James Norris Date: Fri, 9 Oct 2015 12:35:58 +0000 Subject: [PATCH] rs6000.c (rs6000_offload_options): New. * config/rs6000/rs6000.c (rs6000_offload_options): New. (TARGET_OFFLOAD_OPTIONS): New. From-SVN: r228653 --- gcc/ChangeLog | 5 +++++ gcc/config/rs6000/rs6000.c | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index cd9f3f7ef24..cf239b03aad 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2015-10-09 James Norris + + * config/rs6000/rs6000.c (rs6000_offload_options): New. + (TARGET_OFFLOAD_OPTIONS): New. + 2015-10-09 Alexandre Oliva PR middle-end/67891 diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 30760ee4df9..e8d9c7f7e53 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -1690,6 +1690,9 @@ static const struct attribute_spec rs6000_attribute_table[] = #define TARGET_LIBGCC_SHIFT_COUNT_MODE rs6000_abi_word_mode #undef TARGET_UNWIND_WORD_MODE #define TARGET_UNWIND_WORD_MODE rs6000_abi_word_mode + +#undef TARGET_OFFLOAD_OPTIONS +#define TARGET_OFFLOAD_OPTIONS rs6000_offload_options /* Processor table. */ @@ -9530,6 +9533,16 @@ rs6000_abi_word_mode (void) return TARGET_32BIT ? SImode : DImode; } +/* Implement the TARGET_OFFLOAD_OPTIONS hook. */ +static char * +rs6000_offload_options (void) +{ + if (TARGET_64BIT) + return xstrdup ("-foffload-abi=lp64"); + else + return xstrdup ("-foffload-abi=ilp32"); +} + /* On rs6000, function arguments are promoted, as are function return values. */ -- 2.30.2