]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
go-lang.c (go_langhook_post_options): Disable sibling calls by default.
authorIan Lance Taylor <iant@google.com>
Thu, 12 Dec 2013 02:24:20 +0000 (02:24 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Thu, 12 Dec 2013 02:24:20 +0000 (02:24 +0000)
* go-lang.c (go_langhook_post_options): Disable sibling calls by
default.

From-SVN: r205915

gcc/go/ChangeLog
gcc/go/go-lang.c

index 0c03656f6b45fc1487ed89eda245152cfc3a2dfa..db0212cd37d013b950449f794a5c1293a2b5e24b 100644 (file)
@@ -1,3 +1,8 @@
+2013-12-11  Ian Lance Taylor  <iant@google.com>
+
+       * go-lang.c (go_langhook_post_options): Disable sibling calls by
+       default.
+
 2013-12-10  Ian Lance Taylor  <iant@google.com>
 
        * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
index d207a31f5379e08c2f3d314caeeb6213c13ee8c5..ae133f7ed2e8cbb2c309f170e850700ab23f4d0b 100644 (file)
@@ -270,6 +270,10 @@ go_langhook_post_options (const char **pfilename ATTRIBUTE_UNUSED)
   if (flag_excess_precision_cmdline == EXCESS_PRECISION_DEFAULT)
     flag_excess_precision_cmdline = EXCESS_PRECISION_STANDARD;
 
+  /* Tail call optimizations can confuse uses of runtime.Callers.  */
+  if (!global_options_set.x_flag_optimize_sibling_calls)
+    global_options.x_flag_optimize_sibling_calls = 0;
+
   /* Returning false means that the backend should be used.  */
   return false;
 }