From 7d3d198940e5b527e76da7282cc2ce59045b4844 Mon Sep 17 00:00:00 2001 From: Haochen Gui Date: Fri, 4 Jun 2021 11:04:31 +0800 Subject: [PATCH] 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) --- gcc/config/rs6000/rs6000-call.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) 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; } -- 2.47.2