Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /sml/trunk/src/MLRISC/Doc/mlrisc-arch.html
ViewVC logotype

Annotation of /sml/trunk/src/MLRISC/Doc/mlrisc-arch.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 409 - (view) (download) (as text)

1 : monnier 409 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2 :     <HTML>
3 :     <HEAD>
4 :     <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
5 :     <META NAME="GENERATOR" CONTENT="Mozilla/4.07 [en] (X11; I; Linux 2.2.7 i686) [Netscape]">
6 :     </HEAD>
7 :    
8 :     <BODY bgcolor="#FFFFFF">
9 :    
10 :     <CENTER>
11 :     <H1>
12 :     <FONT COLOR="#aa0000">Architecture of MLRISC</FONT></H1></CENTER>
13 :    
14 :     <h2> Overview </h2>
15 :     MLRISC is
16 :    
17 :     <h2> Core Components </h2>
18 :    
19 :     The core components of MLRISC allow the client to quickly construct
20 :     an optimizing backend for various architectures. These components include:
21 :    
22 :     <ul>
23 :     <li> The MLTREE language, which is a RTL-like intermediate language
24 :     that is used to communicate to the MLRISC system. A client is
25 :     responsible for writing the translator that generates MLTREE from
26 :     the source program.
27 :     <li> Instruction selection modules, which generates target machine
28 :     instructions from the MLTREE intermediate language.
29 :     <li> The Register Allocator, which performs register allocation.
30 :     <li> Assemblers, which emits assembly code.
31 :     </ul>
32 :    
33 :     For systems that require direct machine code generation, the following
34 :     modules are included:
35 :     <ul>
36 :     <li> Span dependency resolution modules, which compute addresses
37 :     frmo symbolic addresses,
38 :     fill delay slots, and expand instructions that are
39 :     <font color="#ff0000">span dependent</font>.
40 :     <li> Machine code emitters, which emit machine code into a binary stream.
41 :     </ul>
42 :    
43 :     <h2> Optimization Modules </h2>
44 :    
45 :     In addition, MLRISC has been enhanced to support various types of
46 :     machine level optimizations. These include:
47 :    
48 :     <ul>
49 :     <li> Core optimizations
50 :     <li> SSA optimizations
51 :     <li> ILP optimizations for superscalars
52 :     <li> ILP optimizations for VLIW/EPIC architectures
53 :     </ul>
54 :    
55 :     <h2> Basic Types </h2>
56 :    
57 :     <h2> How Things Are Fit Together </h2>
58 :    
59 :     <ul>
60 :     <li> Cluster
61 :     <li> MLRISC IR
62 :     </ul>
63 :    
64 :     <HR>
65 :     <FONT SIZE="-2">
66 :     <ADDRESS>
67 :     <A HREF="mailto:leunga@cs.nyu.edu">Allen Leung</A></ADDRESS>
68 :     <BR>
69 :    
70 :     </BODY>
71 :     </HTML>

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0