diff mbox

Do not convert to reg_br_prob_base in tree-ssa-threadupdate

Message ID 20170716100856.GB45686@kam.mff.cuni.cz
State New
Headers show

Commit Message

Jan Hubicka July 16, 2017, 10:08 a.m. UTC
Hi,
this patch removes one unnecessary conversion to reg_br_prob_base arithmetics
which triggers ICE with profiled bootstrap in my tree.

profiledbootstrapped/regtested x86_64-linux, comitted.

	* tree-ssa-threadupdate.c (compute_path_counts,
	update_joiner_offpath_counts): Use profile_probability.
diff mbox

Patch

Index: tree-ssa-threadupdate.c
===================================================================
--- tree-ssa-threadupdate.c	(revision 250226)
+++ tree-ssa-threadupdate.c	(working copy)
@@ -763,8 +763,7 @@  compute_path_counts (struct redirection_
   /* Handle incoming profile insanities.  */
   if (total_count < path_in_count)
     path_in_count = total_count;
-  int onpath_scale
-	 = path_in_count.probability_in (total_count).to_reg_br_prob_base ();
+  profile_probability onpath_scale = path_in_count.probability_in (total_count);
 
   /* Walk the entire path to do some more computation in order to estimate
      how much of the path_in_count will flow out of the duplicated threading
@@ -977,8 +976,8 @@  update_joiner_offpath_counts (edge epath
 	 among the duplicated off-path edges based on their original
 	 ratio to the full off-path count (total_orig_off_path_count).
 	 */
-      int scale = enonpath->count.probability_in (total_orig_off_path_count)
-			.to_reg_br_prob_base ();
+      profile_probability scale
+		 = enonpath->count.probability_in (total_orig_off_path_count);
       /* Give the duplicated offpath edge a portion of the duplicated
 	 total.  */
       enonpathdup->count = total_dup_off_path_count.apply_probability (scale);