<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta name="robots" content="index,nofollow"> <title>RunningOnSparc - MLton Standard ML Compiler (SML Compiler)</title> <link rel="stylesheet" type="text/css" charset="iso-8859-1" media="all" href="common.css"> <link rel="stylesheet" type="text/css" charset="iso-8859-1" media="screen" href="screen.css"> <link rel="stylesheet" type="text/css" charset="iso-8859-1" media="print" href="print.css"> <link rel="Start" href="Home"> </head> <body lang="en" dir="ltr"> <script src="http://www.google-analytics.com/urchin.js" type="text/javascript"> </script> <script type="text/javascript"> _uacct = "UA-833377-1"; urchinTracker(); </script> <table bgcolor = lightblue cellspacing = 0 style = "border: 0px;" width = 100%> <tr> <td style = " border: 0px; color: darkblue; font-size: 150%; text-align: left;"> <a class = mltona href="Home">MLton MLTONWIKIVERSION</a> <td style = " border: 0px; font-size: 150%; text-align: center; width: 50%;"> RunningOnSparc <td style = " border: 0px; text-align: right;"> <table cellspacing = 0 style = "border: 0px"> <tr style = "vertical-align: middle;"> </table> <tr style = "background-color: white;"> <td colspan = 3 style = " border: 0px; font-size:70%; text-align: right;"> <a href = "Home">Home</a> <a href = "TitleIndex">Index</a> </table> <div id="content" lang="en" dir="ltr"> MLton runs fine on the Sparc architecture. <h2 id="head-70440046a3dc2e079f23ee1c57dfa76669b732aa">Notes</h2> <ul> <li> <p> When compiling for Sparc, MLton targets the 32-bit Sparc architecture (i.e., Sparc V8). </p> </li> <li class="gap"> <p> When compiling for Sparc, MLton doesn't support native code generation (<tt>-codegen native</tt>). Hence, performance is not as good as it might be and compile times are longer. Also, the quality of code generated by <tt>gcc</tt> is important. By default, MLton calls <tt>gcc -O1</tt>. You can change this by calling MLton with <tt>-cc-opt -O2</tt>. We have seen this speed up some programs by as much as 30%, especially those involving floating point; however, it can also more than double compile times. </p> </li> <li class="gap"> <p> When compiling for Sparc, MLton uses <tt>-align 8</tt> by default. While this speeds up reals, it also may increase object sizes. If your program does not make significant use of reals, you might see a speedup with <tt>-align 4</tt>. </p> </li> </ul> <h2 id="head-b05203cf89b60eb36609a1a8b7f3cafe0927486a">Known issues</h2> <ul> <li> <p> Bootstrapping on the <a href="RunningOnSparc">Sparc architecture</a> is so slow as to be impractical (many hours on a 500MHz UltraSparc). For this reason, we strongly recommend building with a <a href="CrossCompiling">cross compiler</a>. </p> </li> </ul> <h2 id="head-a4bc8bf5caf54b18cea9f58e83dd4acb488deb17">Also see</h2> <ul> <li> <p> <a href="RunningOnSolaris">RunningOnSolaris</a> </p> </li> </ul> </div> <p> <hr> Last edited on 2010-06-01 01:02:32 by <span title="cpe-74-65-8-152.rochester.res.rr.com"><a href="MatthewFluet">MatthewFluet</a></span>. </body></html>