mirror of
				https://gitlab.com/freepascal.org/fpc/source.git
				synced 2025-10-31 13:51:54 +01:00 
			
		
		
		
	* apply cse to all non-regable variables if possible
git-svn-id: trunk@26579 -
This commit is contained in:
		
							parent
							
								
									03b859947f
								
							
						
					
					
						commit
						1b355ce1e4
					
				| @ -180,8 +180,10 @@ unit optcse; | |||||||
|             } |             } | ||||||
|             (not(actualtargetnode(@n)^.nodetype=loadn) or |             (not(actualtargetnode(@n)^.nodetype=loadn) or | ||||||
|              not(tloadnode(actualtargetnode(@n)^).symtableentry.typ in [paravarsym,localvarsym,staticvarsym]) or |              not(tloadnode(actualtargetnode(@n)^).symtableentry.typ in [paravarsym,localvarsym,staticvarsym]) or | ||||||
|              { apply cse on non-regable static variables } |              { apply cse on non-regable variables } | ||||||
|              ((tloadnode(actualtargetnode(@n)^).symtableentry.typ=staticvarsym) and (tstaticvarsym(tloadnode(actualtargetnode(@n)^).symtableentry).varregable=vr_none)) or |              ((tloadnode(actualtargetnode(@n)^).symtableentry.typ in [paravarsym,localvarsym,staticvarsym]) and | ||||||
|  |                not(tabstractvarsym(tloadnode(actualtargetnode(@n)^).symtableentry).is_regvar(false)) and | ||||||
|  |                not(vo_volatile in tabstractvarsym(tloadnode(actualtargetnode(@n)^).symtableentry).varoptions)) or | ||||||
|              (node_complexity(n)>1) |              (node_complexity(n)>1) | ||||||
|             ) and |             ) and | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 florian
						florian