]> git.saurik.com Git - apple/javascriptcore.git/blobdiff - dfg/DFGSSAConversionPhase.h
JavaScriptCore-7601.1.46.3.tar.gz
[apple/javascriptcore.git] / dfg / DFGSSAConversionPhase.h
index 42b24e54ffc64140c01d6ae3013b4fe9b5e4f844..86c999d7082f5521853a2772684ab0d2acd6d5bb 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2013 Apple Inc. All rights reserved.
+ * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -34,10 +34,9 @@ class Graph;
 
 // Convert ThreadedCPS form into SSA form. This results in a form that has:
 //
-// - Roughly minimal Phi's. We use the Aycock & Horspool fixpoint for
-//   converting the CPS maximal Phis into SSA minimal Phis, with the caveat
-//   that irreducible control flow may result in some missed opportunities
-//   for Phi reduction.
+// - Minimal Phi's. We use the the Cytron et al (TOPLAS'91) algorithm for
+//   Phi insertion. Most of the algorithm is implemented in SSACalculator
+//   and Dominators.
 //
 // - No uses of GetLocal/SetLocal except for captured variables and flushes.
 //   After this, any remaining SetLocal means Flush. PhantomLocals become