From: Haochen Gui Date: Fri, 4 Jun 2021 03:04:31 +0000 (+0800) Subject: rs6000: Expand PROMOTE_MODE marco in rs6000_promote_function_mode X-Git-Tag: releases/gcc-11.3.0~953 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7d3d198940e5b527e76da7282cc2ce59045b4844;p=thirdparty%2Fgcc.git rs6000: Expand PROMOTE_MODE marco in rs6000_promote_function_mode This patch prepares for the patch which disables mode promotion of pseudos on rs6000. gcc/ChangeLog: * config/rs6000/rs6000-call.c (rs6000_promote_function_mode): Replace PROMOTE_MODE marco with its content. (cherry picked from commit a3f6bd7891495a0ed65f7da7a55d36c730328692) --- diff --git a/gcc/config/rs6000/rs6000-call.c b/gcc/config/rs6000/rs6000-call.c index 7059f4fab1c7..38386ec6b5f4 100644 --- a/gcc/config/rs6000/rs6000-call.c +++ b/gcc/config/rs6000/rs6000-call.c @@ -6772,7 +6772,9 @@ rs6000_promote_function_mode (const_tree type ATTRIBUTE_UNUSED, int *punsignedp ATTRIBUTE_UNUSED, const_tree, int for_return ATTRIBUTE_UNUSED) { - PROMOTE_MODE (mode, *punsignedp, type); + if (GET_MODE_CLASS (mode) == MODE_INT + && GET_MODE_SIZE (mode) < (TARGET_32BIT ? 4 : 8)) + mode = TARGET_32BIT ? SImode : DImode; return mode; }