41 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .TH EM_OPT 6 2017-01-18
 | |
| .ad
 | |
| .SH NAME
 | |
| em_opt \- EM peephole optimizer
 | |
| .SH SYNOPSIS
 | |
| .B em_opt
 | |
| [\-Ln] [\-m[l]<num>] [ argument ]
 | |
| .SH DESCRIPTION
 | |
| Em_opt reads a compact EM-program, argument or standard input,
 | |
| and produces another compact EM program on standard output
 | |
| that is functionally equivalent,
 | |
| but smaller.
 | |
| Some other functions are here that make this program mandatory
 | |
| before running a codegenerator,
 | |
| it may be left out when interpretation is wanted.
 | |
| Flags recognized are:
 | |
| .IP \-L
 | |
| Make a library module.
 | |
| This means that the output will start with a message giving
 | |
| the names of all exported entities in this module.
 | |
| .IP \-n
 | |
| Do not optimize.
 | |
| No peephole optimizations will be performed,
 | |
| other functions will be carried out.
 | |
| .IP \-m<num>
 | |
| Try to replace multiplies with constants by combinations of shifts and adds,
 | |
| but no more than <num> of them.
 | |
| Integer overflow detection is lost with this option.
 | |
| .IP \-ml<num>
 | |
| Like \-m<num>, but also for long multiplies.
 | |
| .SH "FILES"
 | |
| /tmp/emopt??????, is used when the \-L flag is given only.
 | |
| .SH "SEE ALSO"
 | |
| ack(1)
 | |
| .PD 0
 | |
| .IP [1]
 | |
| A.S. Tanenbaum, Hans van Staveren, Ed Keizer and Johan
 | |
| Stevenson "Description of a machine architecture for use with
 | |
| block structured languages" Informatica report IR-81.
 | |
| .SH AUTHOR
 | |
| Hans van Staveren, Vrije Universiteit
 |