From: jiwang Date: Tue, 5 Jul 2016 16:05:27 +0000 (+0000) Subject: [LRA] Don't count spilling cost for it offmemok X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=21b32b46f1889435764edb3040f89def7ac4818f;p=thirdparty%2Fgcc.git [LRA] Don't count spilling cost for it offmemok * lra-constraints.c (process_alt_operands): Don't add spilling cost for "offmemok". git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238010 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5e466b7cd7d6..de92a3efb8e1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2016-07-05 Jiong Wang + + * lra-constraints.c (process_alt_operands): Don't add spilling cost for + "offmemok". + 2016-07-05 Jan Hubicka * tree-scalar-evoluiton.c (simple_iv): Use nowrap_type to check if diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c index bf08dce2e0a4..e9d3e43eacef 100644 --- a/gcc/lra-constraints.c +++ b/gcc/lra-constraints.c @@ -2488,7 +2488,9 @@ process_alt_operands (int only_alternative) Code below increases the reject for both pseudo and non-pseudo spill. */ - if (no_regs_p && !(REG_P (op) && hard_regno[nop] < 0)) + if (no_regs_p + && !(MEM_P (op) && offmemok) + && !(REG_P (op) && hard_regno[nop] < 0)) { if (lra_dump_file != NULL) fprintf