]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
openmp: BUILT_IN_GOMP_ENABLE_PINNED_MODE
authorAndrew Stubbs <ams@codesourcery.com>
Wed, 30 Mar 2022 22:19:08 +0000 (23:19 +0100)
committerKwok Cheung Yeung <kcy@codesourcery.com>
Tue, 28 Jun 2022 20:55:24 +0000 (13:55 -0700)
Rework the GOMP_enable_pinned_mode call so that it works on powerpc where
the old way gave a local call.

gcc/ChangeLog:

* omp-builtins.def (BUILT_IN_GOMP_ENABLE_PINNED_MODE): New.
* omp-low.cc (omp_enable_pinned_mode): Use
BUILT_IN_GOMP_ENABLE_PINNED_MODE.

gcc/ChangeLog.omp
gcc/omp-builtins.def
gcc/omp-low.cc

index 34c1a09b2154e6b42399d8d41ac9937a469b1c5c..d32ba90b99dd8a050ccb9cb13cd3513dea4a2d1b 100644 (file)
@@ -1,3 +1,9 @@
+2022-03-30  Andrew Stubbs  <ams@codesourcery.com>
+
+       * omp-builtins.def (BUILT_IN_GOMP_ENABLE_PINNED_MODE): New.
+       * omp-low.cc (omp_enable_pinned_mode): Use
+       BUILT_IN_GOMP_ENABLE_PINNED_MODE.
+
 2022-03-11  Andrew Stubbs <ams@codesourcery.com>
 
        Backport of the patch posted at
index ce57a93c9d48b27604057493139025098b50fd8a..1ff9546b4d51091c64e58e4da0c848b586f1025a 100644 (file)
@@ -470,3 +470,6 @@ DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ERROR, "GOMP_error",
 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_EVALUATE_TARGET_DEVICE, "GOMP_evaluate_target_device",
                  BT_FN_BOOL_INT_CONST_PTR_CONST_PTR_CONST_PTR,
                  ATTR_NOTHROW_LEAF_LIST)
+DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ENABLE_PINNED_MODE,
+                 "GOMP_enable_pinned_mode",
+                 BT_FN_VOID, ATTR_NOTHROW_LIST)
index 0962a6c84ebdb2dc5f41939693f6e030ccc05205..850174185cca730c811773425c63d0ab76de7eaf 100644 (file)
@@ -15688,9 +15688,7 @@ omp_enable_pinned_mode ()
   push_struct_function (decl);
   init_tree_ssa (cfun);
 
-  tree callname = get_identifier ("GOMP_enable_pinned_mode");
-  tree calldecl = build_decl (UNKNOWN_LOCATION, FUNCTION_DECL, callname,
-                             voidfntype);
+  tree calldecl = builtin_decl_explicit (BUILT_IN_GOMP_ENABLE_PINNED_MODE);
   gcall *call = gimple_build_call (calldecl, 0);
 
   gimple_seq seq = NULL;