[committed] arc: Don't use millicode thunks unless asked for.

Message ID 20230213093624.946572-1-claziss@gmail.com
State Repeat Merge
Headers
Series [committed] arc: Don't use millicode thunks unless asked for. |

Checks

Context Check Description
snail/gcc-patch-check warning Git am fail log

Commit Message

Claudiu Zissulescu Ianculescu Feb. 13, 2023, 9:36 a.m. UTC
  ARC has enter_s/leave_s instructions which can save/restore the entire
function context. It is not needed the millicode thunks anylonger when
compiling for size, thus, make their usage optional.

gcc/

	* common/config/arc/arc-common.cc (arc_option_optimization_table):
	Remove millicode from list.

gcc/testsuite/

	* gcc.target/arc/milli-1.c: Update test.
---
 gcc/common/config/arc/arc-common.cc    | 1 -
 gcc/testsuite/gcc.target/arc/milli-1.c | 2 +-
 2 files changed, 1 insertion(+), 2 deletions(-)
  

Patch

diff --git a/gcc/common/config/arc/arc-common.cc b/gcc/common/config/arc/arc-common.cc
index 6423f6a9647..95f5dd61201 100644
--- a/gcc/common/config/arc/arc-common.cc
+++ b/gcc/common/config/arc/arc-common.cc
@@ -54,7 +54,6 @@  static const struct default_options arc_option_optimization_table[] =
     { OPT_LEVELS_SIZE, OPT_fsection_anchors, NULL, 1 },
     { OPT_LEVELS_SIZE, OPT_mcase_vector_pcrel, NULL, 1 },
     { OPT_LEVELS_SIZE, OPT_msize_level_, NULL, 3 },
-    { OPT_LEVELS_SIZE, OPT_mmillicode, NULL, 1 },
     { OPT_LEVELS_SIZE, OPT_fif_conversion, NULL, 0 },
     { OPT_LEVELS_1_PLUS, OPT_fomit_frame_pointer, NULL, 1 },
     { OPT_LEVELS_3_PLUS_SPEED_ONLY, OPT_msize_level_, NULL, 0 },
diff --git a/gcc/testsuite/gcc.target/arc/milli-1.c b/gcc/testsuite/gcc.target/arc/milli-1.c
index b501b39eb81..5fba064ca66 100644
--- a/gcc/testsuite/gcc.target/arc/milli-1.c
+++ b/gcc/testsuite/gcc.target/arc/milli-1.c
@@ -1,5 +1,5 @@ 
 /* { dg-do compile } */
-/* { dg-options "-Os" } */
+/* { dg-options "-Os -mmillicode" } */
 
 /* Test if we restore correctly blink when using millicode.  */
 extern void bar (void);