| 
									
										
										
										
											2008-08-02 00:31:43 -04:00
										 |  |  | ! Copyright (C) 2008 Slava Pestov. | 
					
						
							|  |  |  | ! See http://factorcode.org/license.txt for BSD license. | 
					
						
							| 
									
										
										
										
											2008-08-27 06:52:38 -04:00
										 |  |  | USING: kernel namespaces assocs fry sequences | 
					
						
							| 
									
										
										
										
											2008-08-02 00:31:43 -04:00
										 |  |  | compiler.tree | 
					
						
							|  |  |  | compiler.tree.escape-analysis.allocations | 
					
						
							|  |  |  | compiler.tree.escape-analysis.recursive | 
					
						
							|  |  |  | compiler.tree.escape-analysis.branches | 
					
						
							|  |  |  | compiler.tree.escape-analysis.nodes | 
					
						
							| 
									
										
										
										
											2008-08-03 06:01:05 -04:00
										 |  |  | compiler.tree.escape-analysis.simple ;
 | 
					
						
							| 
									
										
										
										
											2008-08-02 00:31:43 -04:00
										 |  |  | IN: compiler.tree.escape-analysis | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-08-07 07:34:28 -04:00
										 |  |  | ! This pass must run after propagation | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-08-02 00:31:43 -04:00
										 |  |  | : escape-analysis ( node -- node )
 | 
					
						
							| 
									
										
										
										
											2008-08-03 22:32:12 -04:00
										 |  |  |     init-escaping-values | 
					
						
							| 
									
										
										
										
											2008-08-02 00:31:43 -04:00
										 |  |  |     H{ } clone allocations set
 | 
					
						
							| 
									
										
										
										
											2008-08-08 14:14:36 -04:00
										 |  |  |     H{ } clone slot-accesses set
 | 
					
						
							| 
									
										
										
										
											2008-08-03 06:01:05 -04:00
										 |  |  |     dup (escape-analysis) | 
					
						
							|  |  |  |     compute-escaping-allocations ;
 |