[MLton-commit] r6393

Ville Laurikari ville at mlton.org
Wed Feb 13 00:31:27 PST 2008


Added support for ia64 and hppa targets.

----------------------------------------------------------------------

U   mlton/trunk/mlnlffigen/control.sml
A   mlton/trunk/mlnlffigen/sizes-hppa.sml
A   mlton/trunk/mlnlffigen/sizes-ia64.sml
U   mlton/trunk/mlnlffigen/sources.mlb

----------------------------------------------------------------------

Modified: mlton/trunk/mlnlffigen/control.sml
===================================================================
--- mlton/trunk/mlnlffigen/control.sml	2008-02-12 21:08:41 UTC (rev 6392)
+++ mlton/trunk/mlnlffigen/control.sml	2008-02-13 08:31:26 UTC (rev 6393)
@@ -1,4 +1,4 @@
-(* Copyright (C) 2004-2007 Henry Cejtin, Matthew Fluet, Suresh
+(* Copyright (C) 2004-2008 Henry Cejtin, Matthew Fluet, Suresh
  *    Jagannathan, and Stephen Weeks.
  *
  * MLton is released under a BSD-style license.
@@ -100,6 +100,10 @@
          case (arch, os) of
             (AMD64, _) => SOME {name = toString t, sizes = SizesAMD64.sizes,
                                 endianShift = EndianLittle.shift}
+          | (HPPA, _) => SOME {name = toString t, sizes = SizesHPPA.sizes,
+                                endianShift = EndianBig.shift}
+          | (IA64, _) => SOME {name = toString t, sizes = SizesIA64.sizes,
+                                endianShift = EndianLittle.shift}
           | (Sparc, _) => SOME {name = toString t, sizes = SizesSparc.sizes,
                                 endianShift = EndianBig.shift}
           | (PowerPC, _) => SOME {name = toString t, sizes = SizesPPC.sizes,
@@ -116,7 +120,7 @@
 val weight = control {name = "weight",
                       default = {heavy = true, light = true},
                       toString = fn {heavy, light} =>
-                      concat ["{heavy = ", Bool.toString heavy, 
+                      concat ["{heavy = ", Bool.toString heavy,
                               ", light = ", Bool.toString light, "}"]}
 
 val width = control {name = "width",

Added: mlton/trunk/mlnlffigen/sizes-hppa.sml
===================================================================
--- mlton/trunk/mlnlffigen/sizes-hppa.sml	2008-02-12 21:08:41 UTC (rev 6392)
+++ mlton/trunk/mlnlffigen/sizes-hppa.sml	2008-02-13 08:31:26 UTC (rev 6393)
@@ -0,0 +1,25 @@
+(* This file was automatically generated using size.c.
+ * It contains information about c data sizes and layout.
+
+ * Limitations:
+ *   1. write proper test for bitFieldAlignment.
+ *   2. include date and system information in this file?
+ *)
+
+structure SizesHPPA = struct
+val sizes = {    (*** all sizes in bits ***)
+  char = {bits = 8, align = 8},
+  short = {bits = 16, align = 16},
+  int = {bits = 32, align = 32},
+  long = {bits = 32, align = 32},
+  longlong = {bits = 64, align = 64},
+  float = {bits = 32, align = 32},
+  double = {bits = 64, align = 64},
+  longdouble = {bits = 128, align = 64},
+  pointer = {bits = 32, align = 32},
+  min_struct = {bits = 8, align = 8},
+  min_union = {bits = 8, align = 8},
+  onlyPackBitFields = false,
+  ignoreUnnamedBitFieldAlignment = true
+}
+end

Added: mlton/trunk/mlnlffigen/sizes-ia64.sml
===================================================================
--- mlton/trunk/mlnlffigen/sizes-ia64.sml	2008-02-12 21:08:41 UTC (rev 6392)
+++ mlton/trunk/mlnlffigen/sizes-ia64.sml	2008-02-13 08:31:26 UTC (rev 6393)
@@ -0,0 +1,25 @@
+(* This file was automatically generated using size.c.
+ * It contains information about c data sizes and layout.
+
+ * Limitations:
+ *   1. write proper test for bitFieldAlignment.
+ *   2. include date and system information in this file?
+ *)
+
+structure SizesIA64 = struct
+val sizes = {    (*** all sizes in bits ***)
+  char = {bits = 8, align = 8},
+  short = {bits = 16, align = 16},
+  int = {bits = 32, align = 32},
+  long = {bits = 32, align = 32},
+  longlong = {bits = 64, align = 64},
+  float = {bits = 32, align = 32},
+  double = {bits = 64, align = 64},
+  longdouble = {bits = 128, align = 64},
+  pointer = {bits = 32, align = 32},
+  min_struct = {bits = 8, align = 8},
+  min_union = {bits = 8, align = 8},
+  onlyPackBitFields = false,
+  ignoreUnnamedBitFieldAlignment = true
+}
+end

Modified: mlton/trunk/mlnlffigen/sources.mlb
===================================================================
--- mlton/trunk/mlnlffigen/sources.mlb	2008-02-12 21:08:41 UTC (rev 6392)
+++ mlton/trunk/mlnlffigen/sources.mlb	2008-02-13 08:31:26 UTC (rev 6393)
@@ -1,4 +1,4 @@
-(* Copyright (C) 2005-2007 Henry Cejtin, Matthew Fluet, Suresh
+(* Copyright (C) 2005-2008 Henry Cejtin, Matthew Fluet, Suresh
  *    Jagannathan, and Stephen Weeks.
  *
  * MLton is released under a BSD-style license.
@@ -18,6 +18,8 @@
       endian-big.sml
       endian-little.sml
       sizes-amd64.sml
+      sizes-hppa.sml
+      sizes-ia64.sml
       sizes-ppc.sml
       sizes-sparc.sml
       sizes-x86.sml
@@ -32,9 +34,9 @@
    end
    local open basis_lib in
       spec.sml
-   end 
-   local 
-      open basis_lib smlnj_lib 
+   end
+   local
+      open basis_lib smlnj_lib
       sets-and-maps.sml
    in
       structure IntListMap
@@ -50,11 +52,10 @@
    local open mlton_lib ckit_lib in
       gen.sml
    end
-   
+
    local open mlton_lib regexp_lib in
       main.sml
    end
 in
    structure Main
 end
-




More information about the MLton-commit mailing list