You can subscribe to this list here.
| 2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(56) |
Sep
(40) |
Oct
(30) |
Nov
(144) |
Dec
(23) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2006 |
Jan
(41) |
Feb
(29) |
Mar
(31) |
Apr
(39) |
May
(193) |
Jun
(45) |
Jul
(19) |
Aug
(3) |
Sep
(23) |
Oct
(83) |
Nov
(92) |
Dec
(123) |
| 2007 |
Jan
(90) |
Feb
(267) |
Mar
(120) |
Apr
(51) |
May
(40) |
Jun
(121) |
Jul
(109) |
Aug
(173) |
Sep
(77) |
Oct
(52) |
Nov
(121) |
Dec
(62) |
| 2008 |
Jan
(76) |
Feb
(53) |
Mar
(98) |
Apr
(87) |
May
(26) |
Jun
(27) |
Jul
(23) |
Aug
(136) |
Sep
(79) |
Oct
(68) |
Nov
(29) |
Dec
(14) |
| 2009 |
Jan
(7) |
Feb
(2) |
Mar
(11) |
Apr
(75) |
May
(1) |
Jun
(95) |
Jul
(19) |
Aug
(4) |
Sep
(8) |
Oct
(93) |
Nov
(43) |
Dec
(21) |
| 2010 |
Jan
(20) |
Feb
(23) |
Mar
(18) |
Apr
(6) |
May
(20) |
Jun
(23) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2011 |
Jan
(2) |
Feb
(6) |
Mar
(15) |
Apr
(5) |
May
(9) |
Jun
(14) |
Jul
(9) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2012 |
Jan
|
Feb
(3) |
Mar
|
Apr
|
May
(2) |
Jun
(17) |
Jul
(37) |
Aug
|
Sep
(1) |
Oct
(6) |
Nov
|
Dec
|
| 2013 |
Jan
|
Feb
|
Mar
(5) |
Apr
(2) |
May
(7) |
Jun
(11) |
Jul
(8) |
Aug
|
Sep
(1) |
Oct
(2) |
Nov
|
Dec
|
| 2014 |
Jan
|
Feb
(2) |
Mar
(1) |
Apr
|
May
(1) |
Jun
(1) |
Jul
(7) |
Aug
(2) |
Sep
|
Oct
(5) |
Nov
(2) |
Dec
(4) |
| 2015 |
Jan
|
Feb
(2) |
Mar
(2) |
Apr
|
May
|
Jun
(9) |
Jul
(1) |
Aug
|
Sep
|
Oct
(4) |
Nov
(1) |
Dec
|
| 2016 |
Jan
(2) |
Feb
(1) |
Mar
(1) |
Apr
(1) |
May
(1) |
Jun
(2) |
Jul
(1) |
Aug
|
Sep
(5) |
Oct
|
Nov
|
Dec
|
| 2017 |
Jan
(1) |
Feb
(3) |
Mar
(3) |
Apr
(7) |
May
(2) |
Jun
(2) |
Jul
(5) |
Aug
(1) |
Sep
(2) |
Oct
(17) |
Nov
(4) |
Dec
(7) |
| 2018 |
Jan
(5) |
Feb
(14) |
Mar
(2) |
Apr
(5) |
May
(2) |
Jun
(5) |
Jul
|
Aug
(2) |
Sep
|
Oct
(3) |
Nov
(5) |
Dec
|
| 2019 |
Jan
(4) |
Feb
(2) |
Mar
(3) |
Apr
(1) |
May
(8) |
Jun
(14) |
Jul
(2) |
Aug
|
Sep
(2) |
Oct
(2) |
Nov
(15) |
Dec
(2) |
| 2020 |
Jan
(10) |
Feb
(3) |
Mar
(1) |
Apr
|
May
(9) |
Jun
(4) |
Jul
(16) |
Aug
(10) |
Sep
(4) |
Oct
(3) |
Nov
|
Dec
|
| 2021 |
Jan
(11) |
Feb
(2) |
Mar
(2) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
(5) |
Sep
|
Oct
(6) |
Nov
(4) |
Dec
(4) |
| 2022 |
Jan
(4) |
Feb
(2) |
Mar
(2) |
Apr
|
May
(6) |
Jun
(3) |
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2023 |
Jan
|
Feb
|
Mar
|
Apr
(2) |
May
(5) |
Jun
(1) |
Jul
(4) |
Aug
(1) |
Sep
|
Oct
(1) |
Nov
(13) |
Dec
|
| 2024 |
Jan
(1) |
Feb
|
Mar
(5) |
Apr
|
May
(10) |
Jun
|
Jul
|
Aug
(3) |
Sep
|
Oct
|
Nov
(1) |
Dec
(14) |
| 2025 |
Jan
(3) |
Feb
|
Mar
(1) |
Apr
|
May
(2) |
Jun
(3) |
Jul
|
Aug
|
Sep
(2) |
Oct
(3) |
Nov
|
Dec
|
|
From: Matthew F. <fl...@ml...> - 2006-06-08 19:46:53
|
Add .exe executables to .ignore to be removed by make clean ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/mllex/.ignore U mlton/branches/on-20050822-x86_64-branch/mlnlffigen/.ignore U mlton/branches/on-20050822-x86_64-branch/mlprof/.ignore U mlton/branches/on-20050822-x86_64-branch/mlton/.ignore U mlton/branches/on-20050822-x86_64-branch/mlyacc/.ignore ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/mllex/.ignore =================================================================== --- mlton/branches/on-20050822-x86_64-branch/mllex/.ignore 2006-06-09 00:03:52 UTC (rev 4637) +++ mlton/branches/on-20050822-x86_64-branch/mllex/.ignore 2006-06-09 02:46:52 UTC (rev 4638) @@ -6,6 +6,7 @@ lexgen.log lexgen.toc mllex +mllex.exe mllex.pdf mllex.ps mllex.sml Modified: mlton/branches/on-20050822-x86_64-branch/mlnlffigen/.ignore =================================================================== --- mlton/branches/on-20050822-x86_64-branch/mlnlffigen/.ignore 2006-06-09 00:03:52 UTC (rev 4637) +++ mlton/branches/on-20050822-x86_64-branch/mlnlffigen/.ignore 2006-06-09 02:46:52 UTC (rev 4638) @@ -1,3 +1,4 @@ *.call-graph.dot *.ssa mlnlffigen +mlnlffigen.exe Modified: mlton/branches/on-20050822-x86_64-branch/mlprof/.ignore =================================================================== --- mlton/branches/on-20050822-x86_64-branch/mlprof/.ignore 2006-06-09 00:03:52 UTC (rev 4637) +++ mlton/branches/on-20050822-x86_64-branch/mlprof/.ignore 2006-06-09 02:46:52 UTC (rev 4638) @@ -1,4 +1,5 @@ *.call-graph.dot *.ssa mlprof +mlprof.exe mlprof.sml Modified: mlton/branches/on-20050822-x86_64-branch/mlton/.ignore =================================================================== --- mlton/branches/on-20050822-x86_64-branch/mlton/.ignore 2006-06-09 00:03:52 UTC (rev 4637) +++ mlton/branches/on-20050822-x86_64-branch/mlton/.ignore 2006-06-09 02:46:52 UTC (rev 4638) @@ -1,3 +1,4 @@ mlton-compile +mlton-compile.exe mlton.sml upgrade-basis.sml Modified: mlton/branches/on-20050822-x86_64-branch/mlyacc/.ignore =================================================================== --- mlton/branches/on-20050822-x86_64-branch/mlyacc/.ignore 2006-06-09 00:03:52 UTC (rev 4637) +++ mlton/branches/on-20050822-x86_64-branch/mlyacc/.ignore 2006-06-09 02:46:52 UTC (rev 4638) @@ -1,5 +1,6 @@ *.call-graph.dot *.ssa +mlyacc +mlyacc.exe mlyacc.ps mlyacc.sml -mlyacc |
|
From: Matthew F. <fl...@ml...> - 2006-06-08 17:03:52
|
Catching up on changelong
----------------------------------------------------------------------
U mlton/branches/on-20050822-x86_64-branch/doc/changelog
----------------------------------------------------------------------
Modified: mlton/branches/on-20050822-x86_64-branch/doc/changelog
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/doc/changelog 2006-06-08 23:57:45 UTC (rev 4636)
+++ mlton/branches/on-20050822-x86_64-branch/doc/changelog 2006-06-09 00:03:52 UTC (rev 4637)
@@ -1,9 +1,9 @@
Here are the changes since version 20051202.
-
+
* 2006-06-08
- Fixed a bug in the native codegen's implementation of the C-calling
convention.
-
+
* 2006-05-11
- Ported to PowerPC-AIX.
- Fixed a bug in the runtime for the cases where nonblocking IO with
@@ -12,6 +12,10 @@
ignored. Now the runtime simulates the flag for these platforms
(except MinGW, yet, where it's still ignored).
+* 2006-05-06
+ - Added -default-type '<ty><N>' for specyfying the binding of default
+ types in the Basis Library (e.g., Int.int).
+
* 2006-04-25
- Ported to HPPA-HPUX.
- Fixed PackReal{,32,64}{Big,Little} to follow the Basis Library
|
|
From: Matthew F. <fl...@ml...> - 2006-06-08 16:57:46
|
Better handling of OS specific warnings ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/runtime/Makefile ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/runtime/Makefile =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/Makefile 2006-06-08 23:56:43 UTC (rev 4635) +++ mlton/branches/on-20050822-x86_64-branch/runtime/Makefile 2006-06-08 23:57:45 UTC (rev 4636) @@ -131,6 +131,7 @@ WARNCFLAGS += -Wmissing-field-initializers endif WARNCFLAGS += -Wmissing-noreturn +WARNCFLAGS += -Wmissing-format-attribute # WARNCFLAGS += -Wpacked -Wpadded WARNCFLAGS += -Wredundant-decls WARNCFLAGS += -Wnested-externs @@ -142,9 +143,7 @@ # GCC doesn't recognize the %I64 format specifier which means %ll on windows ifeq ($(TARGET_OS), mingw) -WARNCFLAGS += -Wno-format -else -WARNCFLAGS += -Wmissing-format-attribute +WARNCFLAGS += -Wno-format -Wno-missing-format-attribute endif UTILCFILES = \ @@ -174,7 +173,7 @@ platform.c HFILES = \ - cenv.h \ + cenv.h \ $(UTILHFILES) \ util.h \ $(GCHFILES) \ |
|
From: Matthew F. <fl...@ml...> - 2006-06-08 16:56:44
|
Undo accidental commit ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/runtime/Makefile ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/runtime/Makefile =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/Makefile 2006-06-08 23:54:30 UTC (rev 4634) +++ mlton/branches/on-20050822-x86_64-branch/runtime/Makefile 2006-06-08 23:56:43 UTC (rev 4635) @@ -131,7 +131,6 @@ WARNCFLAGS += -Wmissing-field-initializers endif WARNCFLAGS += -Wmissing-noreturn -WARNCFLAGS += -Wmissing-format-attribute # WARNCFLAGS += -Wpacked -Wpadded WARNCFLAGS += -Wredundant-decls WARNCFLAGS += -Wnested-externs @@ -143,7 +142,9 @@ # GCC doesn't recognize the %I64 format specifier which means %ll on windows ifeq ($(TARGET_OS), mingw) -WARNCFLAGS += -Wno-format -Wno-missing-format-attribute +WARNCFLAGS += -Wno-format +else +WARNCFLAGS += -Wmissing-format-attribute endif UTILCFILES = \ @@ -173,7 +174,7 @@ platform.c HFILES = \ - cenv.h \ + cenv.h \ $(UTILHFILES) \ util.h \ $(GCHFILES) \ |
|
From: Matthew F. <fl...@ml...> - 2006-06-08 16:54:33
|
Merge trunk revisions 4633:4633 into x86_64 branch ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/doc/changelog U mlton/branches/on-20050822-x86_64-branch/runtime/Makefile ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/doc/changelog =================================================================== --- mlton/branches/on-20050822-x86_64-branch/doc/changelog 2006-06-08 23:52:52 UTC (rev 4633) +++ mlton/branches/on-20050822-x86_64-branch/doc/changelog 2006-06-08 23:54:30 UTC (rev 4634) @@ -20,6 +20,37 @@ * 2006-04-19 - Fixed a bug in MLton.share that could cause a segfault. +* 2006-03-30 + - Changed MLton.Vector.unfoldi to return the state in addition to the + result vector. + +* 2006-03-30 + - Added MLton.Vector.create, a more powerful vector-creation function + than is available in the basis library. + +* 2006-03-04 + - Added MLRISC from SML/NJ 110.57 to standard distribution. + +* 2006-03-03 + - Fixed bug in simplifier that could eliminate an irredundant test. + +* 2006-03-02 + - Ported a bugfix from SML/NJ for a bug with the combination of withNack + and never in CML. + +* 2006-02-09 + - Support compiler specific annotations in ML Basis files. If an + annotation contains ":", then the text preceding the ":" is meant to + denote a compiler. For MLton, if the text preceding the ":" is equal + to "mlton", then the remaining annotation is scanned as a normal + annotation. If the text preceding the ":" is not-equal to "mlton", + then the annotation is ignored, and no warning is issued. + +* 2006-02-04 + - Fixed bug in elaboration of functors; a program with a very large + number of functors could exhibit the error + "ElaborateEnv.functorClosure: firstTycons". + -------------------------------------------------------------------------------- Here are the changes from version 20041109 to version 20051202. @@ -85,7 +116,7 @@ * 2005-09-08 - Fixed bug in type inference of flexible records that would show up - as "Type error: variable applied to wrong number of type args" + as "Type error: variable applied to wrong number of type args". * 2005-09-06 - Fixed bug in Real.signBit, which had assumed that the underlying Modified: mlton/branches/on-20050822-x86_64-branch/runtime/Makefile =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/Makefile 2006-06-08 23:52:52 UTC (rev 4633) +++ mlton/branches/on-20050822-x86_64-branch/runtime/Makefile 2006-06-08 23:54:30 UTC (rev 4634) @@ -131,6 +131,7 @@ WARNCFLAGS += -Wmissing-field-initializers endif WARNCFLAGS += -Wmissing-noreturn +WARNCFLAGS += -Wmissing-format-attribute # WARNCFLAGS += -Wpacked -Wpadded WARNCFLAGS += -Wredundant-decls WARNCFLAGS += -Wnested-externs @@ -142,9 +143,7 @@ # GCC doesn't recognize the %I64 format specifier which means %ll on windows ifeq ($(TARGET_OS), mingw) -WARNCFLAGS += -Wno-format -else -WARNCFLAGS += -Wmissing-format-attribute +WARNCFLAGS += -Wno-format -Wno-missing-format-attribute endif UTILCFILES = \ @@ -174,7 +173,7 @@ platform.c HFILES = \ - cenv.h \ + cenv.h \ $(UTILHFILES) \ util.h \ $(GCHFILES) \ |
|
From: Matthew F. <fl...@ml...> - 2006-06-08 16:52:53
|
Catching up on changes ---------------------------------------------------------------------- U mlton/trunk/doc/changelog ---------------------------------------------------------------------- Modified: mlton/trunk/doc/changelog =================================================================== --- mlton/trunk/doc/changelog 2006-06-08 23:28:54 UTC (rev 4632) +++ mlton/trunk/doc/changelog 2006-06-08 23:52:52 UTC (rev 4633) @@ -20,6 +20,37 @@ * 2006-04-19 - Fixed a bug in MLton.share that could cause a segfault. +* 2006-03-30 + - Changed MLton.Vector.unfoldi to return the state in addition to the + result vector. + +* 2006-03-30 + - Added MLton.Vector.create, a more powerful vector-creation function + than is available in the basis library. + +* 2006-03-04 + - Added MLRISC from SML/NJ 110.57 to standard distribution. + +* 2006-03-03 + - Fixed bug in simplifier that could eliminate an irredundant test. + +* 2006-03-02 + - Ported a bugfix from SML/NJ for a bug with the combination of withNack + and never in CML. + +* 2006-02-09 + - Support compiler specific annotations in ML Basis files. If an + annotation contains ":", then the text preceding the ":" is meant to + denote a compiler. For MLton, if the text preceding the ":" is equal + to "mlton", then the remaining annotation is scanned as a normal + annotation. If the text preceding the ":" is not-equal to "mlton", + then the annotation is ignored, and no warning is issued. + +* 2006-02-04 + - Fixed bug in elaboration of functors; a program with a very large + number of functors could exhibit the error + "ElaborateEnv.functorClosure: firstTycons". + -------------------------------------------------------------------------------- Here are the changes from version 20041109 to version 20051202. @@ -85,7 +116,7 @@ * 2005-09-08 - Fixed bug in type inference of flexible records that would show up - as "Type error: variable applied to wrong number of type args" + as "Type error: variable applied to wrong number of type args". * 2005-09-06 - Fixed bug in Real.signBit, which had assumed that the underlying |
|
From: Matthew F. <fl...@ml...> - 2006-06-08 16:28:56
|
Merge trunk revisions 4553:4631 into x86_64 branch
----------------------------------------------------------------------
U mlton/branches/on-20050822-x86_64-branch/doc/changelog
U mlton/branches/on-20050822-x86_64-branch/mlton/codegen/x86-codegen/x86-generate-transfers.fun
----------------------------------------------------------------------
Modified: mlton/branches/on-20050822-x86_64-branch/doc/changelog
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/doc/changelog 2006-06-08 23:20:48 UTC (rev 4631)
+++ mlton/branches/on-20050822-x86_64-branch/doc/changelog 2006-06-08 23:28:54 UTC (rev 4632)
@@ -1,5 +1,9 @@
Here are the changes since version 20051202.
+* 2006-06-08
+ - Fixed a bug in the native codegen's implementation of the C-calling
+ convention.
+
* 2006-05-11
- Ported to PowerPC-AIX.
- Fixed a bug in the runtime for the cases where nonblocking IO with
Modified: mlton/branches/on-20050822-x86_64-branch/mlton/codegen/x86-codegen/x86-generate-transfers.fun
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/mlton/codegen/x86-codegen/x86-generate-transfers.fun 2006-06-08 23:20:48 UTC (rev 4631)
+++ mlton/branches/on-20050822-x86_64-branch/mlton/codegen/x86-codegen/x86-generate-transfers.fun 2006-06-08 23:28:54 UTC (rev 4632)
@@ -1128,7 +1128,8 @@
{src = arg,
dst = c_stackPDerefFloat,
size = size}]
- else if Size.eq (size, Size.BYTE)
+ else if Size.eq (size, Size.BYTE)
+ orelse Size.eq (size, Size.WORD)
then AppendList.fromList
[Assembly.instruction_movx
{oper = Instruction.MOVZX,
|
|
From: Matthew F. <fl...@ml...> - 2006-06-08 16:20:54
|
Fixed bug in the native codegen's implementation of the C-calling
convention. 16bit arguments were not being widened to 32bits before
being pushed onto the stack.
----------------------------------------------------------------------
U mlton/trunk/doc/changelog
U mlton/trunk/mlton/codegen/x86-codegen/x86-generate-transfers.fun
----------------------------------------------------------------------
Modified: mlton/trunk/doc/changelog
===================================================================
--- mlton/trunk/doc/changelog 2006-06-08 22:35:54 UTC (rev 4630)
+++ mlton/trunk/doc/changelog 2006-06-08 23:20:48 UTC (rev 4631)
@@ -1,5 +1,9 @@
Here are the changes since version 20051202.
+* 2006-06-08
+ - Fixed a bug in the native codegen's implementation of the C-calling
+ convention.
+
* 2006-05-11
- Ported to PowerPC-AIX.
- Fixed a bug in the runtime for the cases where nonblocking IO with
Modified: mlton/trunk/mlton/codegen/x86-codegen/x86-generate-transfers.fun
===================================================================
--- mlton/trunk/mlton/codegen/x86-codegen/x86-generate-transfers.fun 2006-06-08 22:35:54 UTC (rev 4630)
+++ mlton/trunk/mlton/codegen/x86-codegen/x86-generate-transfers.fun 2006-06-08 23:20:48 UTC (rev 4631)
@@ -1128,7 +1128,8 @@
{src = arg,
dst = c_stackPDerefFloat,
size = size}]
- else if Size.eq (size, Size.BYTE)
+ else if Size.eq (size, Size.BYTE)
+ orelse Size.eq (size, Size.WORD)
then AppendList.fromList
[Assembly.instruction_movx
{oper = Instruction.MOVZX,
|
|
From: Matthew F. <fl...@ml...> - 2006-06-08 15:35:55
|
dos2unix ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-mingw/c-types.sml ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-mingw/c-types.sml =================================================================== --- mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-mingw/c-types.sml 2006-06-07 17:54:15 UTC (rev 4629) +++ mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-mingw/c-types.sml 2006-06-08 22:35:54 UTC (rev 4630) @@ -1,131 +1,131 @@ -(* Copyright (C) 2004-2006 Henry Cejtin, Matthew Fluet, Suresh - * Jagannathan, and Stephen Weeks. - * - * MLton is released under a BSD-style license. - * See the file MLton-LICENSE for details. - *) - - -(* C *) -structure C_Char = struct open Int8 type t = int end -functor C_Char_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int8 (A) -structure C_SChar = struct open Int8 type t = int end -functor C_SChar_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int8 (A) -structure C_UChar = struct open Word8 type t = word end -functor C_UChar_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word8 (A) -structure C_Short = struct open Int16 type t = int end -functor C_Short_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int16 (A) -structure C_SShort = struct open Int16 type t = int end -functor C_SShort_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int16 (A) -structure C_UShort = struct open Word16 type t = word end -functor C_UShort_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word16 (A) -structure C_Int = struct open Int32 type t = int end -functor C_Int_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_SInt = struct open Int32 type t = int end -functor C_SInt_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_UInt = struct open Word32 type t = word end -functor C_UInt_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) -structure C_Long = struct open Int32 type t = int end -functor C_Long_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_SLong = struct open Int32 type t = int end -functor C_SLong_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_ULong = struct open Word32 type t = word end -functor C_ULong_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) -structure C_LongLong = struct open Int64 type t = int end -functor C_LongLong_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int64 (A) -structure C_SLongLong = struct open Int64 type t = int end -functor C_SLongLong_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int64 (A) -structure C_ULongLong = struct open Word64 type t = word end -functor C_ULongLong_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word64 (A) -structure C_Float = struct open Real32 type t = real end -functor C_Float_ChooseRealN (A: CHOOSE_REALN_ARG) = ChooseRealN_Real32 (A) -structure C_Double = struct open Real64 type t = real end -functor C_Double_ChooseRealN (A: CHOOSE_REALN_ARG) = ChooseRealN_Real64 (A) -structure C_Size = struct open Word32 type t = word end -functor C_Size_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) - -structure C_Pointer = struct open Word32 type t = word end -functor C_Pointer_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) -structure C_String = struct open Word32 type t = word end -functor C_String_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) -structure C_StringArray = struct open Word32 type t = word end -functor C_StringArray_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) - -(* Generic integers *) -structure C_Fd = C_Int -functor C_Fd_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) -structure C_Signal = C_Int -functor C_Signal_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) -structure C_Status = C_Int -functor C_Status_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) -structure C_Sock = C_Int -functor C_Sock_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) - -(* C99 *) -structure C_Ptrdiff = struct open Int32 type t = int end -functor C_Ptrdiff_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_Intmax = struct open Int64 type t = int end -functor C_Intmax_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int64 (A) -structure C_UIntmax = struct open Word64 type t = word end -functor C_UIntmax_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word64 (A) -structure C_Intptr = struct open Int32 type t = int end -functor C_Intptr_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_UIntptr = struct open Word32 type t = word end -functor C_UIntptr_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) - -(* from <dirent.h> *) -structure C_DirP = struct open Word32 type t = word end -functor C_DirP_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) - -(* from <poll.h> *) -structure C_NFds = struct open Word32 type t = word end -functor C_NFds_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) - -(* from <resource.h> *) -structure C_RLim = struct open Word32 type t = word end -functor C_RLim_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) - -(* from <sys/types.h> *) -structure C_Clock = struct open Int32 type t = int end -functor C_Clock_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_Dev = struct open Word32 type t = word end -functor C_Dev_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) -structure C_GId = struct open Word16 type t = word end -functor C_GId_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word16 (A) -structure C_Id = struct open Int32 type t = int end -functor C_Id_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_INo = struct open Int16 type t = int end -functor C_INo_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int16 (A) -structure C_Mode = struct open Word16 type t = word end -functor C_Mode_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word16 (A) -structure C_NLink = struct open Int16 type t = int end -functor C_NLink_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int16 (A) -structure C_Off = struct open Int32 type t = int end -functor C_Off_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_PId = struct open Int32 type t = int end -functor C_PId_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_SSize = struct open Int32 type t = int end -functor C_SSize_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_SUSeconds = struct open Int32 type t = int end -functor C_SUSeconds_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_Time = struct open Int32 type t = int end -functor C_Time_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) -structure C_UId = struct open Word16 type t = word end -functor C_UId_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word16 (A) - -(* from <sys/socket.h> *) -structure C_Socklen = struct open Int32 type t = int end -functor C_Socklen_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) - -(* from <termios.h> *) -structure C_CC = struct open Word8 type t = word end -functor C_CC_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word8 (A) -structure C_Speed = struct open Word32 type t = word end -functor C_Speed_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) -structure C_TCFlag = struct open Word32 type t = word end -functor C_TCFlag_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) - -(* from "gmp.h" *) -structure C_MPLimb = struct open Word32 type t = word end -functor C_MPLimb_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) - +(* Copyright (C) 2004-2006 Henry Cejtin, Matthew Fluet, Suresh + * Jagannathan, and Stephen Weeks. + * + * MLton is released under a BSD-style license. + * See the file MLton-LICENSE for details. + *) + + +(* C *) +structure C_Char = struct open Int8 type t = int end +functor C_Char_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int8 (A) +structure C_SChar = struct open Int8 type t = int end +functor C_SChar_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int8 (A) +structure C_UChar = struct open Word8 type t = word end +functor C_UChar_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word8 (A) +structure C_Short = struct open Int16 type t = int end +functor C_Short_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int16 (A) +structure C_SShort = struct open Int16 type t = int end +functor C_SShort_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int16 (A) +structure C_UShort = struct open Word16 type t = word end +functor C_UShort_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word16 (A) +structure C_Int = struct open Int32 type t = int end +functor C_Int_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_SInt = struct open Int32 type t = int end +functor C_SInt_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_UInt = struct open Word32 type t = word end +functor C_UInt_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_Long = struct open Int32 type t = int end +functor C_Long_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_SLong = struct open Int32 type t = int end +functor C_SLong_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_ULong = struct open Word32 type t = word end +functor C_ULong_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_LongLong = struct open Int64 type t = int end +functor C_LongLong_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int64 (A) +structure C_SLongLong = struct open Int64 type t = int end +functor C_SLongLong_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int64 (A) +structure C_ULongLong = struct open Word64 type t = word end +functor C_ULongLong_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word64 (A) +structure C_Float = struct open Real32 type t = real end +functor C_Float_ChooseRealN (A: CHOOSE_REALN_ARG) = ChooseRealN_Real32 (A) +structure C_Double = struct open Real64 type t = real end +functor C_Double_ChooseRealN (A: CHOOSE_REALN_ARG) = ChooseRealN_Real64 (A) +structure C_Size = struct open Word32 type t = word end +functor C_Size_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +structure C_Pointer = struct open Word32 type t = word end +functor C_Pointer_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_String = struct open Word32 type t = word end +functor C_String_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_StringArray = struct open Word32 type t = word end +functor C_StringArray_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* Generic integers *) +structure C_Fd = C_Int +functor C_Fd_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) +structure C_Signal = C_Int +functor C_Signal_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) +structure C_Status = C_Int +functor C_Status_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) +structure C_Sock = C_Int +functor C_Sock_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) + +(* C99 *) +structure C_Ptrdiff = struct open Int32 type t = int end +functor C_Ptrdiff_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_Intmax = struct open Int64 type t = int end +functor C_Intmax_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int64 (A) +structure C_UIntmax = struct open Word64 type t = word end +functor C_UIntmax_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word64 (A) +structure C_Intptr = struct open Int32 type t = int end +functor C_Intptr_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_UIntptr = struct open Word32 type t = word end +functor C_UIntptr_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* from <dirent.h> *) +structure C_DirP = struct open Word32 type t = word end +functor C_DirP_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* from <poll.h> *) +structure C_NFds = struct open Word32 type t = word end +functor C_NFds_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* from <resource.h> *) +structure C_RLim = struct open Word32 type t = word end +functor C_RLim_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* from <sys/types.h> *) +structure C_Clock = struct open Int32 type t = int end +functor C_Clock_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_Dev = struct open Word32 type t = word end +functor C_Dev_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_GId = struct open Word16 type t = word end +functor C_GId_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word16 (A) +structure C_Id = struct open Int32 type t = int end +functor C_Id_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_INo = struct open Int16 type t = int end +functor C_INo_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int16 (A) +structure C_Mode = struct open Word16 type t = word end +functor C_Mode_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word16 (A) +structure C_NLink = struct open Int16 type t = int end +functor C_NLink_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int16 (A) +structure C_Off = struct open Int32 type t = int end +functor C_Off_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_PId = struct open Int32 type t = int end +functor C_PId_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_SSize = struct open Int32 type t = int end +functor C_SSize_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_SUSeconds = struct open Int32 type t = int end +functor C_SUSeconds_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_Time = struct open Int32 type t = int end +functor C_Time_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_UId = struct open Word16 type t = word end +functor C_UId_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word16 (A) + +(* from <sys/socket.h> *) +structure C_Socklen = struct open Int32 type t = int end +functor C_Socklen_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) + +(* from <termios.h> *) +structure C_CC = struct open Word8 type t = word end +functor C_CC_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word8 (A) +structure C_Speed = struct open Word32 type t = word end +functor C_Speed_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_TCFlag = struct open Word32 type t = word end +functor C_TCFlag_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* from "gmp.h" *) +structure C_MPLimb = struct open Word32 type t = word end +functor C_MPLimb_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + |
|
From: Stephen W. <sw...@ml...> - 2006-06-07 10:54:16
|
Removed dependence on "time" package, since Makefiles no longer use time (since r2266). ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/package/debian/control ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/package/debian/control =================================================================== --- mlton/branches/on-20050822-x86_64-branch/package/debian/control 2006-06-05 02:29:51 UTC (rev 4628) +++ mlton/branches/on-20050822-x86_64-branch/package/debian/control 2006-06-07 17:54:15 UTC (rev 4629) @@ -2,7 +2,7 @@ Section: devel Priority: optional Maintainer: Stephen Weeks <sw...@sw...> -Build-Depends: mlton (>= 20041109-1), htmldoc, libgmp3-dev (>= 4.0.1), tetex-bin, tetex-extra, time +Build-Depends: mlton (>= 20041109-1), htmldoc, libgmp3-dev (>= 4.0.1), tetex-bin, tetex-extra Standards-Version: 3.6.2 Package: mlton |
|
From: Matthew F. <fl...@ml...> - 2006-06-04 19:29:52
|
Clean up includes ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.h U mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.h 2006-06-05 02:18:16 UTC (rev 4627) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.h 2006-06-05 02:29:51 UTC (rev 4628) @@ -1,3 +1,4 @@ +#include <inttypes.h> #include <stdint.h> #include <grp.h> @@ -4,13 +5,11 @@ #include <netdb.h> #include <netinet/in.h> #include <netinet/tcp.h> -#include <netinet/udp.h> #include <poll.h> #include <pwd.h> #include <sys/ioctl.h> #include <sys/mman.h> #include <sys/param.h> -#include <sys/poll.h> #include <sys/resource.h> #include <sys/socket.h> #include <sys/sysctl.h> Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h 2006-06-05 02:18:16 UTC (rev 4627) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h 2006-06-05 02:29:51 UTC (rev 4628) @@ -1,10 +1,10 @@ #include <inttypes.h> +#include <stdint.h> #include <grp.h> #include <netdb.h> #include <netinet/in.h> #include <netinet/tcp.h> -#include <netinet/udp.h> #include <poll.h> #include <pwd.h> #include <sys/ioctl.h> |
|
From: Matthew F. <fl...@ml...> - 2006-06-04 19:18:18
|
Clean up includes ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h 2006-06-01 19:42:53 UTC (rev 4626) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h 2006-06-05 02:18:16 UTC (rev 4627) @@ -10,7 +10,6 @@ #include <sys/ioctl.h> #include <sys/mman.h> #include <sys/param.h> -#include <sys/poll.h> #include <sys/resource.h> #include <sys/socket.h> #include <sys/sysctl.h> |
|
From: Matthew F. <fl...@ml...> - 2006-06-01 12:42:53
|
Cleaning up includes ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.h ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.h 2006-06-01 01:59:06 UTC (rev 4625) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.h 2006-06-01 19:42:53 UTC (rev 4626) @@ -6,13 +6,10 @@ #include <netdb.h> #include <netinet/in.h> #include <netinet/tcp.h> -#include <netinet/udp.h> #include <poll.h> #include <pwd.h> #include <sys/ioctl.h> #include <sys/mman.h> -#include <sys/poll.h> -#include <sys/ptrace.h> #include <sys/resource.h> #include <sys/socket.h> #include <sys/sysctl.h> |
|
From: Matthew F. <fl...@ml...> - 2006-05-31 18:59:07
|
Cleaning up includes; sorry if I broke anything on other platforms ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/runtime/Makefile U mlton/branches/on-20050822-x86_64-branch/runtime/cenv.h U mlton/branches/on-20050822-x86_64-branch/runtime/platform/aix.h U mlton/branches/on-20050822-x86_64-branch/runtime/platform/cygwin.h U mlton/branches/on-20050822-x86_64-branch/runtime/platform/darwin.h U mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.h U mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.h U mlton/branches/on-20050822-x86_64-branch/runtime/platform/linux.h U mlton/branches/on-20050822-x86_64-branch/runtime/platform/mingw.h U mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.h U mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h U mlton/branches/on-20050822-x86_64-branch/runtime/platform/solaris.h ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/runtime/Makefile =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/Makefile 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/Makefile 2006-06-01 01:59:06 UTC (rev 4625) @@ -174,6 +174,7 @@ platform.c HFILES = \ + cenv.h \ $(UTILHFILES) \ util.h \ $(GCHFILES) \ Modified: mlton/branches/on-20050822-x86_64-branch/runtime/cenv.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/cenv.h 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/cenv.h 2006-06-01 01:59:06 UTC (rev 4625) @@ -29,7 +29,8 @@ // fenv.h (or approximate equivalent) comes from the n-way OS switch below. // #include <fenv.h> #include <float.h> -#include <inttypes.h> +// inttypes.h (or approximate equivalent) comes from the n-way OS switch below. +// #include <inttypes.h> #include <iso646.h> #include <limits.h> // #include <locale.h> Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/aix.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/aix.h 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/aix.h 2006-06-01 01:59:06 UTC (rev 4625) @@ -1,19 +1,6 @@ -#define HAS_FEROUND TRUE -#define HAS_FPCLASSIFY FALSE -#define HAS_FPCLASSIFY64 TRUE -#define HAS_MSG_DONTWAIT FALSE -#define HAS_PTRACE FALSE -#define HAS_REMAP FALSE -#define HAS_SIGALTSTACK TRUE -#define HAS_SIGNBIT FALSE -#define HAS_SPAWN FALSE -#define HAS_TIME_PROFILING FALSE - -#define MLton_Platform_OS_host "aix" #define __ppc__ #include <grp.h> -#include <math.h> #include <netdb.h> #include <netinet/in.h> #include <netinet/tcp.h> @@ -25,12 +12,23 @@ #include <sys/syslog.h> #include <sys/times.h> #include <sys/types.h> -#include <sys/types.h> #include <sys/un.h> #include <sys/utsname.h> #include <termios.h> +#define HAS_FEROUND TRUE +#define HAS_FPCLASSIFY FALSE +#define HAS_FPCLASSIFY64 TRUE +#define HAS_MSG_DONTWAIT FALSE +#define HAS_PTRACE FALSE +#define HAS_REMAP FALSE +#define HAS_SIGALTSTACK TRUE +#define HAS_SIGNBIT FALSE +#define HAS_SPAWN FALSE +#define HAS_TIME_PROFILING FALSE +#define MLton_Platform_OS_host "aix" + #include "feround.h" #define FE_TOWARDZERO 0 // FP_RND_RZ Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/cygwin.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/cygwin.h 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/cygwin.h 2006-06-01 01:59:06 UTC (rev 4625) @@ -1,11 +1,14 @@ +#include <inttypes.h> + #include <grp.h> -#include <limits.h> +#include <io.h> #include <netdb.h> #include <netinet/in.h> #include <netinet/tcp.h> #include <netinet/udp.h> #include <process.h> #include <pwd.h> +#include <sys/cygwin.h> #include <sys/ioctl.h> #include <sys/mman.h> #include <sys/poll.h> @@ -18,8 +21,6 @@ #include <syslog.h> #include <termios.h> #include <windows.h> -#include <sys/cygwin.h> -#include <io.h> #define MLton_Platform_OS_host "cygwin" Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/darwin.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/darwin.h 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/darwin.h 2006-06-01 01:59:06 UTC (rev 4625) @@ -1,8 +1,8 @@ #include <fenv.h> +#include <inttypes.h> #include <stdint.h> #include <grp.h> -#include <limits.h> #include <netdb.h> #include <netinet/in.h> #include <netinet/tcp.h> Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.h 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.h 2006-06-01 01:59:06 UTC (rev 4625) @@ -1,16 +1,14 @@ #include <fenv.h> +#include <inttypes.h> #include <stdint.h> #include <grp.h> -#include <limits.h> #include <netdb.h> #include <netinet/in.h> #include <netinet/tcp.h> #include <netinet/udp.h> -#include <pwd.h> #include <poll.h> -#include <termios.h> -#include <sys/resource.h> +#include <pwd.h> #include <sys/ioctl.h> #include <sys/mman.h> #include <sys/poll.h> Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.h 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.h 2006-06-01 01:59:06 UTC (rev 4625) @@ -3,8 +3,9 @@ #endif #include <fenv.h> +#include <inttypes.h> + #include <grp.h> -#include <inttypes.h> #include <math.h> #include <netdb.h> #include <netinet/in.h> @@ -20,7 +21,6 @@ #include <sys/utsname.h> #include <syslog.h> #include <termios.h> -#include <termios.h> #include "setenv.h" Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/linux.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/linux.h 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/linux.h 2006-06-01 01:59:06 UTC (rev 4625) @@ -1,29 +1,23 @@ #include <fenv.h> +#include <inttypes.h> #include <stdint.h> #include <grp.h> #include <netdb.h> #include <netinet/in.h> #include <netinet/tcp.h> -#include <netinet/udp.h> -#include <pwd.h> #include <poll.h> -#include <termios.h> -#include <sys/resource.h> +#include <pwd.h> #include <sys/ioctl.h> #include <sys/mman.h> -#include <sys/poll.h> -#include <sys/ptrace.h> #include <sys/resource.h> #include <sys/socket.h> -#include <sys/sysinfo.h> #include <sys/times.h> #include <sys/un.h> #include <sys/utsname.h> #include <sys/wait.h> #include <syslog.h> #include <termios.h> -#include <values.h> #define HAS_FEROUND TRUE #define HAS_FPCLASSIFY TRUE Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/mingw.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/mingw.h 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/mingw.h 2006-06-01 01:59:06 UTC (rev 4625) @@ -1,9 +1,9 @@ #include <fenv.h> +#include <inttypes.h> #include <stdint.h> #include <windows.h> // lots of stuff depends on this #include <io.h> -#include <limits.h> #include <lm.h> #include <process.h> //#include <psapi.h> Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.h 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.h 2006-06-01 01:59:06 UTC (rev 4625) @@ -5,10 +5,8 @@ #include <netinet/in.h> #include <netinet/tcp.h> #include <netinet/udp.h> -#include <pwd.h> #include <poll.h> -#include <termios.h> -#include <sys/resource.h> +#include <pwd.h> #include <sys/ioctl.h> #include <sys/mman.h> #include <sys/param.h> Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h 2006-06-01 01:59:06 UTC (rev 4625) @@ -1,13 +1,12 @@ -#include <grp.h> #include <inttypes.h> + +#include <grp.h> #include <netdb.h> #include <netinet/in.h> #include <netinet/tcp.h> #include <netinet/udp.h> -#include <pwd.h> #include <poll.h> -#include <termios.h> -#include <sys/resource.h> +#include <pwd.h> #include <sys/ioctl.h> #include <sys/mman.h> #include <sys/param.h> Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/solaris.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/solaris.h 2006-05-30 03:41:47 UTC (rev 4624) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/solaris.h 2006-06-01 01:59:06 UTC (rev 4625) @@ -1,3 +1,5 @@ +#include <inttypes.h> + #include <grp.h> #include <netdb.h> #include <netinet/in.h> @@ -3,9 +5,7 @@ #include <netinet/tcp.h> #include <netinet/udp.h> +#include <poll.h> #include <pwd.h> #include <strings.h> -#include <poll.h> -#include <termios.h> -#include <sys/resource.h> #include <sys/filio.h> /* For FIONBIO, FIONREAD. */ #include <sys/ioctl.h> |
|
From: Matthew F. <fl...@ml...> - 2006-05-29 20:41:48
|
OpenBSD 3.9 adds C99 stdint.h and inttypes.h and changes the signedness of clock_t; these are changes from OpenBSD 3.8 ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-openbsd/c-types.sml U mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-openbsd/c-types.sml =================================================================== --- mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-openbsd/c-types.sml 2006-05-30 03:21:33 UTC (rev 4623) +++ mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-openbsd/c-types.sml 2006-05-30 03:41:47 UTC (rev 4624) @@ -86,8 +86,8 @@ functor C_RLim_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word64 (A) (* from <sys/types.h> *) -structure C_Clock = struct open Word32 type t = word end -functor C_Clock_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_Clock = struct open Int32 type t = int end +functor C_Clock_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) structure C_Dev = struct open Int32 type t = int end functor C_Dev_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) structure C_GId = struct open Word32 type t = word end Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h 2006-05-30 03:21:33 UTC (rev 4623) +++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.h 2006-05-30 03:41:47 UTC (rev 4624) @@ -38,38 +38,38 @@ int fpclassify32 (float f); int fpclassify64 (double d); -#ifndef PRIu8 -#define PRIu8 "hhu" -#endif -#ifndef PRIu16 -#define PRIu16 "hu" -#endif -#ifndef PRIx16 -#define PRIx16 "hx" -#endif -#ifndef PRId32 -#define PRId32 "d" -#endif -#ifndef PRIu32 -#define PRIu32 "u" -#endif -#ifndef PRIx32 -#define PRIx32 "x" -#endif -typedef long long int intmax_t; -#ifndef INTMAX_MIN -#define INTMAX_MIN LLONG_MIN -#endif -typedef unsigned long long int uintmax_t; -#ifndef PRIuMAX -#define PRIuMAX "llu" -#endif -#ifndef PRIxMAX -#define PRIxMAX "llx" -#endif +/* #ifndef PRIu8 */ +/* #define PRIu8 "hhu" */ +/* #endif */ +/* #ifndef PRIu16 */ +/* #define PRIu16 "hu" */ +/* #endif */ +/* #ifndef PRIx16 */ +/* #define PRIx16 "hx" */ +/* #endif */ +/* #ifndef PRId32 */ +/* #define PRId32 "d" */ +/* #endif */ +/* #ifndef PRIu32 */ +/* #define PRIu32 "u" */ +/* #endif */ +/* #ifndef PRIx32 */ +/* #define PRIx32 "x" */ +/* #endif */ +/* typedef long long int intmax_t; */ +/* #ifndef INTMAX_MIN */ +/* #define INTMAX_MIN LLONG_MIN */ +/* #endif */ +/* typedef unsigned long long int uintmax_t; */ +/* #ifndef PRIuMAX */ +/* #define PRIuMAX "llu" */ +/* #endif */ +/* #ifndef PRIxMAX */ +/* #define PRIxMAX "llx" */ +/* #endif */ -#ifndef PRIxPTR -#define PRIxPTR "lx" -#endif +/* #ifndef PRIxPTR */ +/* #define PRIxPTR "lx" */ +/* #endif */ extern char **environ; /* for Posix_ProcEnv_environ */ |
|
From: Matthew F. <fl...@ml...> - 2006-05-29 20:21:35
|
Runtime and bootstrap on NetBSD 3.0
----------------------------------------------------------------------
U mlton/branches/on-20050822-x86_64-branch/bin/mlton-script
U mlton/branches/on-20050822-x86_64-branch/runtime/platform/darwin.c
U mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.c
U mlton/branches/on-20050822-x86_64-branch/runtime/platform/linux.c
U mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.c
A mlton/branches/on-20050822-x86_64-branch/runtime/platform/nonwin.c
U mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.c
U mlton/branches/on-20050822-x86_64-branch/runtime/platform/sysctl.c
----------------------------------------------------------------------
Modified: mlton/branches/on-20050822-x86_64-branch/bin/mlton-script
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/bin/mlton-script 2006-05-29 23:27:28 UTC (rev 4622)
+++ mlton/branches/on-20050822-x86_64-branch/bin/mlton-script 2006-05-30 03:21:33 UTC (rev 4623)
@@ -81,6 +81,7 @@
-target-cc-opts amd64 '-m32 -mtune=opteron' \
-target-cc-opts darwin '-I/sw/include' \
-target-cc-opts freebsd '-I/usr/local/include' \
+ -target-cc-opts netbsd '-I/usr/pkg/include' \
-target-cc-opts solaris \
'-Wa,-xarch=v8plusa
-mcpu=ultrasparc' \
@@ -102,7 +103,7 @@
-target-link-opts mingw \
'-lgmp -lws2_32 -lkernel32 -lpsapi -lnetapi32' \
-target-link-opts netbsd \
- '-Wl,-R/usr/pkg/lib -L/usr/local/lib/ -lgmp' \
+ '-Wl,-R/usr/pkg/lib -L/usr/pkg/lib/ -lgmp' \
-target-link-opts openbsd '-L/usr/local/lib/ -lgmp' \
-target-link-opts solaris '-lgmp -lnsl -lsocket -lrt' \
-link-opts '-lgdtoa -lm' \
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/darwin.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/platform/darwin.c 2006-05-29 23:27:28 UTC (rev 4622)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/darwin.c 2006-05-30 03:21:33 UTC (rev 4623)
@@ -7,6 +7,7 @@
#include "diskBack.unix.c"
#include "mkdir2.c"
#include "mmap-protect.c"
+#include "nonwin.c"
#include "use-mmap.c"
code_pointer GC_getTextEnd (void) {
@@ -54,10 +55,3 @@
diee ("sysctl failed");
return mem;
}
-
-// This is not windows
-__attribute__ ((noreturn))
-C_Errno_t(C_PId_t) MLton_Process_cwait (__attribute__ ((unused)) C_PId_t pid,
- __attribute__ ((unused)) Ref(C_Status_t) status) {
- die("MLton_Process_cwait not implemented");
-}
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.c 2006-05-29 23:27:28 UTC (rev 4622)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/freebsd.c 2006-05-30 03:21:33 UTC (rev 4623)
@@ -4,6 +4,8 @@
#include "getText.c"
#include "mkdir2.c"
#include "mmap-protect.c"
+#include "nonwin.c"
+#include "sysctl.c"
#include "use-mmap.c"
void GC_displayMem () {
@@ -23,13 +25,3 @@
sa->sa_flags = SA_ONSTACK | SA_RESTART | SA_SIGINFO;
sa->sa_sigaction = (void (*)(int, siginfo_t*, void*))catcher;
}
-
-size_t GC_totalRam (void) {
- unsigned int mem;
- size_t len;
-
- len = sizeof (int);
- if (-1 == sysctlbyname ("hw.physmem", &mem, &len, NULL, 0))
- diee ("sysctl failed");
- return (size_t)mem;
-}
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/linux.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/platform/linux.c 2006-05-29 23:27:28 UTC (rev 4622)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/linux.c 2006-05-30 03:21:33 UTC (rev 4623)
@@ -7,6 +7,7 @@
#include "mkdir2.c"
#include "displayMem.linux.c"
#include "mmap-protect.c"
+#include "nonwin.c"
#include "sysconf.c"
#include "use-mmap.c"
@@ -70,26 +71,3 @@
return mremap (start, oldLength, newLength, MREMAP_MAYMOVE);
}
-/* ------------------------------------------------- */
-/* Posix */
-/* ------------------------------------------------- */
-
-__attribute__ ((noreturn))
-void Posix_IO_setbin (__attribute__ ((unused)) C_Fd_t fd) {
- die("Posix_IO_setbin not implemented");
-}
-
-__attribute__ ((noreturn))
-void Posix_IO_settext (__attribute__ ((unused)) C_Fd_t fd) {
- die("Posix_IO_settext not implemented");
-}
-
-/* ------------------------------------------------- */
-/* Process */
-/* ------------------------------------------------- */
-
-__attribute__ ((noreturn))
-C_Errno_t(C_PId_t) MLton_Process_cwait (__attribute__ ((unused)) C_PId_t pid,
- __attribute__ ((unused)) Ref(C_Status_t) status) {
- die("MLton_Process_cwait not implemented");
-}
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.c 2006-05-29 23:27:28 UTC (rev 4622)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.c 2006-05-30 03:21:33 UTC (rev 4623)
@@ -5,6 +5,7 @@
#include "mkdir2.c"
#include "displayMem.linux.c"
#include "mmap-protect.c"
+#include "nonwin.c"
#include "sysctl.c"
#include "use-mmap.c"
Added: mlton/branches/on-20050822-x86_64-branch/runtime/platform/nonwin.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/platform/nonwin.c 2006-05-29 23:27:28 UTC (rev 4622)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/nonwin.c 2006-05-30 03:21:33 UTC (rev 4623)
@@ -0,0 +1,23 @@
+/* ------------------------------------------------- */
+/* Posix */
+/* ------------------------------------------------- */
+
+__attribute__ ((noreturn))
+void Posix_IO_setbin (__attribute__ ((unused)) C_Fd_t fd) {
+ die("Posix_IO_setbin not implemented");
+}
+
+__attribute__ ((noreturn))
+void Posix_IO_settext (__attribute__ ((unused)) C_Fd_t fd) {
+ die("Posix_IO_settext not implemented");
+}
+
+/* ------------------------------------------------- */
+/* Process */
+/* ------------------------------------------------- */
+
+__attribute__ ((noreturn))
+C_Errno_t(C_PId_t) MLton_Process_cwait (__attribute__ ((unused)) C_PId_t pid,
+ __attribute__ ((unused)) Ref(C_Status_t) status) {
+ die("MLton_Process_cwait not implemented");
+}
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.c 2006-05-29 23:27:28 UTC (rev 4622)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/openbsd.c 2006-05-30 03:21:33 UTC (rev 4623)
@@ -5,6 +5,7 @@
#include "mkdir2.c"
#include "displayMem.linux.c"
#include "mmap-protect.c"
+#include "nonwin.c"
#include "sysctl.c"
#include "use-mmap.c"
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/sysctl.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/platform/sysctl.c 2006-05-29 23:27:28 UTC (rev 4622)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/sysctl.c 2006-05-30 03:21:33 UTC (rev 4623)
@@ -1,12 +1,25 @@
+size_t GC_pageSize (void) {
+ int pageSize;
+ size_t len;
+ int mib[2];
+
+ mib[0] = CTL_HW;
+ mib[1] = HW_PAGESIZE;
+ len = sizeof(pageSize);
+ if (-1 == sysctl (mib, 2, &pageSize, &len, NULL, 0))
+ diee ("sysctl failed");
+ return (size_t)pageSize;
+}
+
size_t GC_totalRam (void) {
- int mem;
+ int physMem;
size_t len;
int mib[2];
mib[0] = CTL_HW;
mib[1] = HW_PHYSMEM;
- len = sizeof(mem);
- if (-1 == sysctl (mib, 2, &mem, &len, NULL, 0))
+ len = sizeof(physMem);
+ if (-1 == sysctl (mib, 2, &physMem, &len, NULL, 0))
diee ("sysctl failed");
- return (size_t)mem;
+ return (size_t)physMem;
}
|
|
From: Matthew F. <fl...@ml...> - 2006-05-29 16:27:29
|
Synch basis-ffi.sml ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/basis-library/primitive/basis-ffi.sml ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/basis-library/primitive/basis-ffi.sml =================================================================== --- mlton/branches/on-20050822-x86_64-branch/basis-library/primitive/basis-ffi.sml 2006-05-29 17:30:09 UTC (rev 4621) +++ mlton/branches/on-20050822-x86_64-branch/basis-library/primitive/basis-ffi.sml 2006-05-29 23:27:28 UTC (rev 4622) @@ -961,6 +961,7 @@ val class = _import "Real32_class" : Real32.t -> C_Int.t; val div = _import "Real32_div" : Real32.t * Real32.t -> Real32.t; val equal = _import "Real32_equal" : Real32.t * Real32.t -> Bool.t; +val fetch = _import "Real32_fetch" : (Real32.t) ref -> Real32.t; val frexp = _import "Real32_frexp" : Real32.t * (C_Int.t) ref -> Real32.t; val gdtoa = _import "Real32_gdtoa" : Real32.t * C_Int.t * C_Int.t * (C_Int.t) ref -> C_String.t; val ldexp = _import "Real32_ldexp" : Real32.t * C_Int.t -> Real32.t; @@ -990,6 +991,7 @@ val (minNormalPosGet, minNormalPosSet) = _symbol "Real32_minNormalPos": (unit -> (Real32.t)) * ((Real32.t) -> unit); val (minPosGet, minPosSet) = _symbol "Real32_minPos": (unit -> (Real32.t)) * ((Real32.t) -> unit); val modf = _import "Real32_modf" : Real32.t * (Real32.t) ref -> Real32.t; +val move = _import "Real32_move" : (Real32.t) ref * (Real32.t) ref -> unit; val mul = _import "Real32_mul" : Real32.t * Real32.t -> Real32.t; val muladd = _import "Real32_muladd" : Real32.t * Real32.t * Real32.t -> Real32.t; val mulsub = _import "Real32_mulsub" : Real32.t * Real32.t * Real32.t -> Real32.t; @@ -997,6 +999,7 @@ val nextAfter = _import "Real32_nextAfter" : Real32.t * Real32.t -> Real32.t; val round = _import "Real32_round" : Real32.t -> Real32.t; val signBit = _import "Real32_signBit" : Real32.t -> C_Int.t; +val store = _import "Real32_store" : (Real32.t) ref * Real32.t -> unit; val strto = _import "Real32_strto" : NullString8.t -> Real32.t; val sub = _import "Real32_sub" : Real32.t * Real32.t -> Real32.t; val toReal32 = _import "Real32_toReal32" : Real32.t -> Real32.t; @@ -1018,6 +1021,7 @@ val class = _import "Real64_class" : Real64.t -> C_Int.t; val div = _import "Real64_div" : Real64.t * Real64.t -> Real64.t; val equal = _import "Real64_equal" : Real64.t * Real64.t -> Bool.t; +val fetch = _import "Real64_fetch" : (Real64.t) ref -> Real64.t; val frexp = _import "Real64_frexp" : Real64.t * (C_Int.t) ref -> Real64.t; val gdtoa = _import "Real64_gdtoa" : Real64.t * C_Int.t * C_Int.t * (C_Int.t) ref -> C_String.t; val ldexp = _import "Real64_ldexp" : Real64.t * C_Int.t -> Real64.t; @@ -1047,6 +1051,7 @@ val (minNormalPosGet, minNormalPosSet) = _symbol "Real64_minNormalPos": (unit -> (Real64.t)) * ((Real64.t) -> unit); val (minPosGet, minPosSet) = _symbol "Real64_minPos": (unit -> (Real64.t)) * ((Real64.t) -> unit); val modf = _import "Real64_modf" : Real64.t * (Real64.t) ref -> Real64.t; +val move = _import "Real64_move" : (Real64.t) ref * (Real64.t) ref -> unit; val mul = _import "Real64_mul" : Real64.t * Real64.t -> Real64.t; val muladd = _import "Real64_muladd" : Real64.t * Real64.t * Real64.t -> Real64.t; val mulsub = _import "Real64_mulsub" : Real64.t * Real64.t * Real64.t -> Real64.t; @@ -1054,6 +1059,7 @@ val nextAfter = _import "Real64_nextAfter" : Real64.t * Real64.t -> Real64.t; val round = _import "Real64_round" : Real64.t -> Real64.t; val signBit = _import "Real64_signBit" : Real64.t -> C_Int.t; +val store = _import "Real64_store" : (Real64.t) ref * Real64.t -> unit; val strto = _import "Real64_strto" : NullString8.t -> Real64.t; val sub = _import "Real64_sub" : Real64.t * Real64.t -> Real64.t; val toReal32 = _import "Real64_toReal32" : Real64.t -> Real32.t; |
|
From: Matthew F. <fl...@ml...> - 2006-05-29 10:30:16
|
formatting
----------------------------------------------------------------------
U mlton/branches/on-20050822-x86_64-branch/runtime/bytecode/opcode.h
----------------------------------------------------------------------
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/bytecode/opcode.h
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/bytecode/opcode.h 2006-05-29 02:21:54 UTC (rev 4620)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/bytecode/opcode.h 2006-05-29 17:30:09 UTC (rev 4621)
@@ -43,7 +43,7 @@
loadStoreContents (mode, ty) \
loadStoreGlobal (mode, ty, ty) \
loadStoreOffset (mode, ty) \
- loadStoreRegister (mode, ty, ty) \
+ loadStoreRegister (mode, ty, ty) \
loadStoreStackOffset (mode, ty)
#define loadStorePrims(mode) \
|
|
From: Matthew F. <fl...@ml...> - 2006-05-28 19:21:56
|
Move Real64_{fetch,move,store} from c-chunk.h to
Real<N>_{fetch,move,store} in Real-ops.h.
Move Real<N>_modf from modf.c to Math-fns.h. (Real<N>_modf is now
inlined in the C-codegen.)
Implement Real64_modf using Real64_store on sparc and hppa; this
should fix the legitimate 'cast increases required alignment of target
type' warning.
----------------------------------------------------------------------
U mlton/branches/on-20050822-x86_64-branch/include/c-chunk.h
U mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/Math-fns.h
U mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/Real-ops.h
D mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/modf.c
U mlton/branches/on-20050822-x86_64-branch/runtime/gen/basis-ffi.def
----------------------------------------------------------------------
Modified: mlton/branches/on-20050822-x86_64-branch/include/c-chunk.h
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/include/c-chunk.h 2006-05-28 12:25:24 UTC (rev 4619)
+++ mlton/branches/on-20050822-x86_64-branch/include/c-chunk.h 2006-05-29 02:21:54 UTC (rev 4620)
@@ -217,47 +217,6 @@
#include "basis/Word/Word-check.h"
/* ------------------------------------------------- */
-/* Real */
-/* ------------------------------------------------- */
-
-typedef volatile union {
- Word32 tab[2];
- Real64 d;
-} Real64Or2Word32s;
-
-static inline Real64 Real64_fetch (Real64 *dp) {
- Real64Or2Word32s u;
- Word32 *p;
-
- p = (Word32*)dp;
- u.tab[0] = p[0];
- u.tab[1] = p[1];
- return u.d;
-}
-
-static inline void Real64_move (Real64 *dst, Real64 *src) {
- Word32 *pd;
- Word32 *ps;
- Word32 t;
-
- pd = (Word32*)dst;
- ps = (Word32*)src;
- t = ps[1];
- pd[0] = ps[0];
- pd[1] = t;
-}
-
-static inline void Real64_store (Real64 *dp, Real64 d) {
- Real64Or2Word32s u;
- Word32 *p;
-
- p = (Word32*)dp;
- u.d = d;
- p[0] = u.tab[0];
- p[1] = u.tab[1];
-}
-
-/* ------------------------------------------------- */
/* Word */
/* ------------------------------------------------- */
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/Math-fns.h
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/Math-fns.h 2006-05-28 12:25:24 UTC (rev 4619)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/Math-fns.h 2006-05-29 02:21:54 UTC (rev 4620)
@@ -86,3 +86,40 @@
}
binaryRealInt(ldexp, ldexp)
#undef binaryRealInt
+
+#if (defined (__hppa__) || defined (__sparc__))
+#define binaryRealRealRef(g, h) \
+ MLTON_CODEGEN_MATHFN(Real32_t h##f (Real32_t x, Real32_t *yp);) \
+ MLTON_CODEGEN_STATIC_INLINE \
+ Real32_t Real32_##g (Real32_t x, Ref(Real32_t) yp) { \
+ /* Real32_t r, res; */ \
+ /* r = Real32_fetch (yp); */ \
+ /* res = h##f (x, &r); */ \
+ /* Real32_store (yp, r); */ \
+ /* return res; */ \
+ return h##f (x, (Real32_t*)yp); \
+ } \
+ MLTON_CODEGEN_MATHFN(Real64_t h (Real64_t x, Real64_t *yp);) \
+ MLTON_CODEGEN_STATIC_INLINE \
+ Real64_t Real64_##g (Real64_t x, Ref(Real64_t) yp) { \
+ Real64_t r, res; \
+ /* r = Real64_fetch (yp); */ \
+ res = h (x, &r); \
+ Real64_store (yp, r); \
+ return res; \
+ }
+#else
+#define binaryRealRealRef(g, h) \
+ MLTON_CODEGEN_MATHFN(Real32_t h##f (Real32_t x, Real32_t *yp);) \
+ MLTON_CODEGEN_STATIC_INLINE \
+ Real32_t Real32_##g (Real32_t x, Ref(Real32_t) yp) { \
+ return h##f (x, (Real32_t*)yp); \
+ } \
+ MLTON_CODEGEN_MATHFN(Real64_t h (Real64_t x, Real64_t *yp);) \
+ MLTON_CODEGEN_STATIC_INLINE \
+ Real64_t Real64_##g (Real64_t x, Ref(Real64_t) yp) { \
+ return h (x, (Real64_t*)yp); \
+ }
+#endif
+binaryRealRealRef(modf, modf)
+#undef binaryRealRealRef
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/Real-ops.h
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/Real-ops.h 2006-05-28 12:25:24 UTC (rev 4619)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/Real-ops.h 2006-05-29 02:21:54 UTC (rev 4620)
@@ -23,6 +23,40 @@
return op r1; \
}
+#define misaligned(size) \
+ typedef volatile union { \
+ Real##size##_t r; \
+ Word32_t ws[sizeof(Real##size##_t) / sizeof(Word32_t)]; \
+ } Real##size##OrWord32s; \
+ MLTON_CODEGEN_STATIC_INLINE \
+ Real##size##_t Real##size##_fetch (Ref(Real##size##_t) rp) { \
+ Real##size##OrWord32s u; \
+ Word32_t *wp; \
+ wp = (Word32_t*)rp; \
+ u.ws[0] = wp[0]; \
+ if ((sizeof(Real##size##_t) / sizeof(Word32_t)) > 1) \
+ u.ws[1] = wp[1]; \
+ return u.r; \
+ } \
+ MLTON_CODEGEN_STATIC_INLINE \
+ void Real##size##_store (Ref(Real##size##_t) rp, Real##size##_t r) { \
+ Real##size##OrWord32s u; \
+ Word32_t *wp; \
+ wp = (Word32_t*)rp; \
+ u.r = r; \
+ wp[0] = u.ws[0]; \
+ if ((sizeof(Real##size##_t) / sizeof(Word32_t)) > 1) \
+ wp[1] = u.ws[1]; \
+ return; \
+ } \
+ MLTON_CODEGEN_STATIC_INLINE \
+ void Real##size##_move (Ref(Real##size##_t) dst, Ref(Real##size##_t) src) { \
+ Real##size##_t r; \
+ r = Real##size##_fetch (src); \
+ Real##size##_store (dst, r); \
+ return; \
+ }
+
#define all(size) \
binary(size, add, +) \
binary(size, div, /) \
@@ -33,12 +67,14 @@
compare(size, lt, <) \
ternary(size, add, +) \
ternary(size, sub, -) \
-unary(size, neg, -)
+unary(size, neg, -) \
+misaligned(size)
all(32)
all(64)
#undef all
+#undef misaligned
#undef unary
#undef ternary
#undef compare
Deleted: mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/modf.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/modf.c 2006-05-28 12:25:24 UTC (rev 4619)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/basis/Real/modf.c 2006-05-29 02:21:54 UTC (rev 4620)
@@ -1,11 +0,0 @@
-#include "platform.h"
-
-#define binaryRealRealRef(g, h) \
-Real64_t Real64_##g (Real64_t x, Ref(Real64_t) yp) { \
- return h (x, (Real64_t*)yp); \
-} \
-Real32_t Real32_##g (Real32_t x, Ref(Real32_t) yp) { \
- return h##f (x, (Real32_t*)yp); \
-}
-binaryRealRealRef(modf, modf)
-#undef binaryRealRealRef
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/gen/basis-ffi.def
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/gen/basis-ffi.def 2006-05-28 12:25:24 UTC (rev 4619)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/gen/basis-ffi.def 2006-05-29 02:21:54 UTC (rev 4620)
@@ -875,6 +875,7 @@
Real32.class = _import : Real32.t -> C_Int.t
Real32.div = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t * Real32.t -> Real32.t
Real32.equal = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t * Real32.t -> Bool.t
+Real32.fetch = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t ref -> Real32.t
Real32.frexp = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t * C_Int.t ref -> Real32.t
Real32.gdtoa = _import : Real32.t * C_Int.t * C_Int.t * C_Int.t ref -> C_String.t
Real32.ldexp = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t * C_Int.t -> Real32.t
@@ -883,7 +884,8 @@
Real32.maxFinite = _symbol : Real32.t
Real32.minNormalPos = _symbol : Real32.t
Real32.minPos = _symbol : Real32.t
-Real32.modf = _import : Real32.t * Real32.t ref -> Real32.t
+Real32.modf = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t * Real32.t ref -> Real32.t
+Real32.move = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t ref * Real32.t ref -> unit
Real32.mul = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t * Real32.t -> Real32.t
Real32.muladd = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t * Real32.t * Real32.t -> Real32.t
Real32.mulsub = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t * Real32.t * Real32.t -> Real32.t
@@ -891,6 +893,7 @@
Real32.nextAfter = _import : Real32.t * Real32.t -> Real32.t
Real32.round = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t -> Real32.t
Real32.signBit = _import : Real32.t -> C_Int.t
+Real32.store = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t ref * Real32.t -> unit
Real32.strto = _import : NullString8.t -> Real32.t
Real32.sub = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t * Real32.t -> Real32.t
Real32.toReal32 = _import MLTON_CODEGEN_STATIC_INLINE : Real32.t -> Real32.t
@@ -925,6 +928,7 @@
Real64.class = _import : Real64.t -> C_Int.t
Real64.div = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t * Real64.t -> Real64.t
Real64.equal = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t * Real64.t -> Bool.t
+Real64.fetch = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t ref -> Real64.t
Real64.frexp = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t * C_Int.t ref -> Real64.t
Real64.gdtoa = _import : Real64.t * C_Int.t * C_Int.t * C_Int.t ref -> C_String.t
Real64.ldexp = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t * C_Int.t -> Real64.t
@@ -933,7 +937,8 @@
Real64.maxFinite = _symbol : Real64.t
Real64.minNormalPos = _symbol : Real64.t
Real64.minPos = _symbol : Real64.t
-Real64.modf = _import : Real64.t * Real64.t ref -> Real64.t
+Real64.modf = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t * Real64.t ref -> Real64.t
+Real64.move = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t ref * Real64.t ref -> unit
Real64.mul = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t * Real64.t -> Real64.t
Real64.muladd = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t * Real64.t * Real64.t -> Real64.t
Real64.mulsub = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t * Real64.t * Real64.t -> Real64.t
@@ -941,6 +946,7 @@
Real64.nextAfter = _import : Real64.t * Real64.t -> Real64.t
Real64.round = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t -> Real64.t
Real64.signBit = _import : Real64.t -> C_Int.t
+Real64.store = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t ref * Real64.t -> unit
Real64.strto = _import : NullString8.t -> Real64.t
Real64.sub = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t * Real64.t -> Real64.t
Real64.toReal32 = _import MLTON_CODEGEN_STATIC_INLINE : Real64.t -> Real32.t
|
|
From: Wesley T. <we...@ml...> - 2006-05-28 05:25:25
|
On windows, there is no %ll modifier for long long. Instead, they use %I64, which of course is no ISO format string. MinGW correctly defines the use of %I64, but gcc doesn't like it. This causes >= 3 warnings per file, which I've silenced on MinGW by (crudely) disabling format warnings. ---------------------------------------------------------------------- U mlton/branches/on-20050822-x86_64-branch/runtime/Makefile ---------------------------------------------------------------------- Modified: mlton/branches/on-20050822-x86_64-branch/runtime/Makefile =================================================================== --- mlton/branches/on-20050822-x86_64-branch/runtime/Makefile 2006-05-28 08:23:14 UTC (rev 4618) +++ mlton/branches/on-20050822-x86_64-branch/runtime/Makefile 2006-05-28 12:25:24 UTC (rev 4619) @@ -131,7 +131,6 @@ WARNCFLAGS += -Wmissing-field-initializers endif WARNCFLAGS += -Wmissing-noreturn -WARNCFLAGS += -Wmissing-format-attribute # WARNCFLAGS += -Wpacked -Wpadded WARNCFLAGS += -Wredundant-decls WARNCFLAGS += -Wnested-externs @@ -141,6 +140,13 @@ OPTWARNCFLAGS = $(WARNCFLAGS) -Wdisabled-optimization $(OPTWARNFLAGS) DEBUGWARNCFLAGS = $(WARNCFLAGS) $(DEBUGWARNFLAGS) +# GCC doesn't recognize the %I64 format specifier which means %ll on windows +ifeq ($(TARGET_OS), mingw) +WARNCFLAGS += -Wno-format +else +WARNCFLAGS += -Wmissing-format-attribute +endif + UTILCFILES = \ $(shell find util -type f | grep '\.c$$') UTILHFILES = \ |
|
From: Ville L. <vi...@ml...> - 2006-05-28 01:23:16
|
Updated to get runtime to build on HPPA/HP-UX.
----------------------------------------------------------------------
U mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.c
U mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.h
----------------------------------------------------------------------
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.c 2006-05-27 23:33:13 UTC (rev 4617)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.c 2006-05-28 08:23:14 UTC (rev 4618)
@@ -1,6 +1,5 @@
#include "platform.h"
-
#include <sys/mman.h>
#include <sys/newsig.h>
#include <sys/param.h>
@@ -16,19 +15,19 @@
#include "use-mmap.c"
extern unsigned char __text_start;
-extern unsigned_char etext;
+extern unsigned char etext;
-code_pointer getTextStart () {
+code_pointer GC_getTextStart (void) {
return &__text_start;
}
-code_pointer getTextEnd () {
+code_pointer GC_getTextEnd (void) {
return &etext;
}
struct pstnames {
int type;
- char *name;
+ const char *name;
};
static struct pstnames pst_type_names[] =
@@ -64,31 +63,31 @@
{
static char fname[256];
#ifdef PSTAT_FILEDETAILS
- if (pstat_getpathname(fname, sizeof(fname), &vm.pst_fid) < 0)
+ if (pstat_getpathname (fname, sizeof (fname), &vm.pst_fid) < 0)
#endif
- strcpy(fname, "unknown");
+ strcpy (fname, "unknown");
return fname;
}
-void GC_displayMem () {
+void GC_displayMem (void) {
int i;
struct pst_vm_status buf;
- size_t page_size = sysconf(_SC_PAGE_SIZE);
+ size_t page_size = sysconf (_SC_PAGE_SIZE);
printf("va_start va_end perms type phys filename\n");
printf("--------+--------+-----+-------+------+-----------\n");
for (i = 0;; i++) {
- if (pstat_getprocvm (&buf, sizeof(buf), 0, i) < 0)
+ if (pstat_getprocvm (&buf, sizeof (buf), 0, i) < 0)
break;
printf("%p %p %s%s%s %-8s %4d %s\n",
(void*)buf.pst_vaddr,
- (void*)buf.pst_vaddr + buf.pst_length * page_size - 1,
+ (void*)(buf.pst_vaddr + buf.pst_length * page_size - 1),
(buf.pst_flags & PS_PROT_READ) ? "-" : "r",
(buf.pst_flags & PS_PROT_WRITE) ? "-" : "w",
(buf.pst_flags & PS_PROT_EXECUTE) ? "-" : "x",
- pst_type_name(buf.pst_type),
+ pst_type_name (buf.pst_type),
buf.pst_phys_pages,
- pst_filename(buf));
+ pst_filename (buf));
}
}
@@ -105,10 +104,10 @@
sa->sa_sigaction = (void (*)(int, siginfo_t*, void*))catcher;
}
-W32 GC_totalRam (GC_state s) {
+size_t GC_totalRam (void) {
struct pst_static buf;
- if (pstat_getstatic (&buf, sizeof(buf), 1, 0) < 0)
+ if (pstat_getstatic (&buf, sizeof (buf), 1, 0) < 0)
diee ("failed to get physical memory size");
return buf.physical_memory * buf.page_size;
}
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.h
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.h 2006-05-27 23:33:13 UTC (rev 4617)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/hpux.h 2006-05-28 08:23:14 UTC (rev 4618)
@@ -2,25 +2,25 @@
#define _XOPEN_SOURCE_EXTENDED
#endif
+#include <fenv.h>
+#include <grp.h>
#include <inttypes.h>
#include <math.h>
+#include <netdb.h>
+#include <netinet/in.h>
+#include <netinet/tcp.h>
+#include <poll.h>
#include <signal.h>
-#include <poll.h>
-#include <termios.h>
+#include <sys/poll.h>
+#include <sys/ptrace.h>
#include <sys/resource.h>
-#include <sys/ptrace.h>
-#include <sys/poll.h>
#include <sys/socket.h>
+#include <sys/times.h>
#include <sys/un.h>
-#include <sys/times.h>
#include <sys/utsname.h>
+#include <syslog.h>
#include <termios.h>
-#include <netinet/in.h>
-#include <netinet/tcp.h>
-#include <netdb.h>
-#include <grp.h>
-#include <fenv.h>
-#include <syslog.h>
+#include <termios.h>
#include "setenv.h"
@@ -43,8 +43,28 @@
#ifndef PF_INET6
/* Old versions of HP-UX don't have IPv6 support. */
-struct sockaddr_in6 {};
+struct sockaddr_in6 { char dummy; };
+#define sockaddr_storage sockaddr_in
#define PF_INET6 0
+#define AF_INET6 0
#endif
-extern char **environ; /* for Posix_ProcEnv_environ */
+typedef long suseconds_t;
+
+/* These GCC builtins aren't defined in the system headers. */
+float modff(float x, float *iptr);
+float rintf(float x);
+float frexpf(float x, int *exp);
+float ldexpf(float x, int exp);
+
+#define PRIxPTR "lx"
+
+/* These are incorrectly defined in the system headers. */
+#undef PRIu32
+#define PRIu32 "u"
+#undef PRIx32
+#define PRIx32 "x"
+#undef PRId32
+#define PRId32 "d"
+
+#define SIZE_MAX ((size_t)SSIZE_MAX * 2 + 1)
|
|
From: Matthew F. <fl...@ml...> - 2006-05-27 16:33:14
|
Profiling functions are called from the mutator without calling
enter/leave, so must compute the frameIndex and sourceSeqIndex of the
top frame via the cached gcState.stackTop, not through
gcState.currentThread.
----------------------------------------------------------------------
U mlton/branches/on-20050822-x86_64-branch/runtime/gc/profiling.c
U mlton/branches/on-20050822-x86_64-branch/runtime/gc/sources.c
U mlton/branches/on-20050822-x86_64-branch/runtime/gc/sources.h
U mlton/branches/on-20050822-x86_64-branch/runtime/gc/stack.c
U mlton/branches/on-20050822-x86_64-branch/runtime/gc/stack.h
----------------------------------------------------------------------
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/gc/profiling.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/gc/profiling.c 2006-05-27 16:48:09 UTC (rev 4616)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/gc/profiling.c 2006-05-27 23:33:13 UTC (rev 4617)
@@ -92,7 +92,7 @@
}
void GC_profileEnter (GC_state s) {
- enterForProfiling (s, getStackTopFrameSourceSeqIndex (s, getStackCurrent (s)));
+ enterForProfiling (s, getCachedStackTopFrameSourceSeqIndex (s));
}
void removeFromStackForProfiling (GC_state s, GC_profileMasterIndex i) {
@@ -152,7 +152,7 @@
}
void GC_profileLeave (GC_state s) {
- leaveForProfiling (s, getStackTopFrameSourceSeqIndex (s, getStackCurrent (s)));
+ leaveForProfiling (s, getCachedStackTopFrameSourceSeqIndex (s));
}
@@ -192,7 +192,7 @@
incForProfiling (s, amount,
s->amInGC
? SOURCE_SEQ_GC
- : getStackTopFrameSourceSeqIndex (s, getStackCurrent (s)));
+ : getCachedStackTopFrameSourceSeqIndex (s));
}
void GC_profileAllocInc (GC_state s, size_t amount) {
@@ -326,7 +326,7 @@
if (s->amInGC)
sourceSeqsIndex = SOURCE_SEQ_GC;
else {
- frameIndex = getStackTopFrameIndex (s, getStackCurrent (s));
+ frameIndex = getCachedStackTopFrameIndex (s);
if (C_FRAME == s->frameLayouts[frameIndex].kind)
sourceSeqsIndex = s->sourceMaps.frameSources[frameIndex];
else {
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/gc/sources.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/gc/sources.c 2006-05-27 16:48:09 UTC (rev 4616)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/gc/sources.c 2006-05-27 23:33:13 UTC (rev 4617)
@@ -6,8 +6,12 @@
* See the file MLton-LICENSE for details.
*/
-GC_sourceSeqIndex getStackTopFrameSourceSeqIndex (GC_state s, GC_stack stack) {
- return s->sourceMaps.frameSources[getStackTopFrameIndex (s, stack)];
+GC_sourceSeqIndex getCachedStackTopFrameSourceSeqIndex (GC_state s) {
+ GC_frameIndex i;
+
+ i = getCachedStackTopFrameIndex (s);
+ assert(i < s->sourceMaps.frameSourcesLength);
+ return s->sourceMaps.frameSources[i];
}
char* getSourceName (GC_state s, GC_sourceIndex i) {
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/gc/sources.h
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/gc/sources.h 2006-05-27 16:48:09 UTC (rev 4616)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/gc/sources.h 2006-05-27 23:33:13 UTC (rev 4617)
@@ -75,7 +75,7 @@
#if (defined (MLTON_GC_INTERNAL_FUNCS))
-static inline GC_sourceSeqIndex getStackTopFrameSourceSeqIndex (GC_state s, GC_stack stack);
+static inline GC_sourceSeqIndex getCachedStackTopFrameSourceSeqIndex (GC_state s);
static inline char* getSourceName (GC_state s, GC_sourceIndex i);
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/gc/stack.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/gc/stack.c 2006-05-27 16:48:09 UTC (rev 4616)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/gc/stack.c 2006-05-27 23:33:13 UTC (rev 4617)
@@ -64,6 +64,22 @@
}
+GC_frameIndex getCachedStackTopFrameIndex (GC_state s) {
+ GC_frameIndex res;
+
+ res =
+ getFrameIndexFromReturnAddress
+ (s, *((GC_returnAddress*)(s->stackTop - GC_RETURNADDRESS_SIZE)));
+ return res;
+}
+
+GC_frameLayout getCachedStackTopFrameLayout (GC_state s) {
+ GC_frameLayout layout;
+
+ layout = getFrameLayoutFromFrameIndex (s, getCachedStackTopFrameIndex (s));
+ return layout;
+}
+
GC_frameIndex getStackTopFrameIndex (GC_state s, GC_stack stack) {
GC_frameIndex res;
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/gc/stack.h
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/gc/stack.h 2006-05-27 16:48:09 UTC (rev 4616)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/gc/stack.h 2006-05-27 23:33:13 UTC (rev 4617)
@@ -69,6 +69,8 @@
static inline pointer getStackTop (GC_state s, GC_stack stack);
static inline pointer getStackLimitPlusSlop (GC_state s, GC_stack stack);
static inline pointer getStackLimit (GC_state s, GC_stack stack);
+static inline GC_frameIndex getCachedStackTopFrameIndex (GC_state s);
+static inline GC_frameLayout getCachedStackTopFrameLayout (GC_state s);
static inline GC_frameIndex getStackTopFrameIndex (GC_state s, GC_stack stack);
static inline GC_frameLayout getStackTopFrameLayout (GC_state s, GC_stack stack);
static inline uint16_t getStackTopFrameSize (GC_state s, GC_stack stack);
|
|
From: Matthew F. <fl...@ml...> - 2006-05-27 09:48:10
|
NetBSD typdefs ---------------------------------------------------------------------- A mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-netbsd/c-types.sml ---------------------------------------------------------------------- Added: mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-netbsd/c-types.sml =================================================================== --- mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-netbsd/c-types.sml 2006-05-27 16:16:19 UTC (rev 4615) +++ mlton/branches/on-20050822-x86_64-branch/basis-library/config/c/x86-netbsd/c-types.sml 2006-05-27 16:48:09 UTC (rev 4616) @@ -0,0 +1,131 @@ +(* Copyright (C) 2004-2006 Henry Cejtin, Matthew Fluet, Suresh + * Jagannathan, and Stephen Weeks. + * + * MLton is released under a BSD-style license. + * See the file MLton-LICENSE for details. + *) + + +(* C *) +structure C_Char = struct open Int8 type t = int end +functor C_Char_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int8 (A) +structure C_SChar = struct open Int8 type t = int end +functor C_SChar_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int8 (A) +structure C_UChar = struct open Word8 type t = word end +functor C_UChar_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word8 (A) +structure C_Short = struct open Int16 type t = int end +functor C_Short_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int16 (A) +structure C_SShort = struct open Int16 type t = int end +functor C_SShort_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int16 (A) +structure C_UShort = struct open Word16 type t = word end +functor C_UShort_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word16 (A) +structure C_Int = struct open Int32 type t = int end +functor C_Int_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_SInt = struct open Int32 type t = int end +functor C_SInt_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_UInt = struct open Word32 type t = word end +functor C_UInt_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_Long = struct open Int32 type t = int end +functor C_Long_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_SLong = struct open Int32 type t = int end +functor C_SLong_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_ULong = struct open Word32 type t = word end +functor C_ULong_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_LongLong = struct open Int64 type t = int end +functor C_LongLong_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int64 (A) +structure C_SLongLong = struct open Int64 type t = int end +functor C_SLongLong_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int64 (A) +structure C_ULongLong = struct open Word64 type t = word end +functor C_ULongLong_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word64 (A) +structure C_Float = struct open Real32 type t = real end +functor C_Float_ChooseRealN (A: CHOOSE_REALN_ARG) = ChooseRealN_Real32 (A) +structure C_Double = struct open Real64 type t = real end +functor C_Double_ChooseRealN (A: CHOOSE_REALN_ARG) = ChooseRealN_Real64 (A) +structure C_Size = struct open Word32 type t = word end +functor C_Size_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +structure C_Pointer = struct open Word32 type t = word end +functor C_Pointer_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_String = struct open Word32 type t = word end +functor C_String_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_StringArray = struct open Word32 type t = word end +functor C_StringArray_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* Generic integers *) +structure C_Fd = C_Int +functor C_Fd_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) +structure C_Signal = C_Int +functor C_Signal_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) +structure C_Status = C_Int +functor C_Status_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) +structure C_Sock = C_Int +functor C_Sock_ChooseIntN (A: CHOOSE_INTN_ARG) = C_Int_ChooseIntN (A) + +(* C99 *) +structure C_Ptrdiff = struct open Int32 type t = int end +functor C_Ptrdiff_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_Intmax = struct open Int64 type t = int end +functor C_Intmax_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int64 (A) +structure C_UIntmax = struct open Word64 type t = word end +functor C_UIntmax_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word64 (A) +structure C_Intptr = struct open Int32 type t = int end +functor C_Intptr_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_UIntptr = struct open Word32 type t = word end +functor C_UIntptr_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* from <dirent.h> *) +structure C_DirP = struct open Word32 type t = word end +functor C_DirP_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* from <poll.h> *) +structure C_NFds = struct open Word32 type t = word end +functor C_NFds_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* from <resource.h> *) +structure C_RLim = struct open Int64 type t = int end +functor C_RLim_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int64 (A) + +(* from <sys/types.h> *) +structure C_Clock = struct open Word32 type t = word end +functor C_Clock_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_Dev = struct open Word32 type t = word end +functor C_Dev_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_GId = struct open Word32 type t = word end +functor C_GId_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_Id = struct open Word32 type t = word end +functor C_Id_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_INo = struct open Word32 type t = word end +functor C_INo_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_Mode = struct open Word32 type t = word end +functor C_Mode_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_NLink = struct open Word32 type t = word end +functor C_NLink_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_Off = struct open Int64 type t = int end +functor C_Off_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int64 (A) +structure C_PId = struct open Int32 type t = int end +functor C_PId_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_SSize = struct open Int32 type t = int end +functor C_SSize_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_SUSeconds = struct open Int32 type t = int end +functor C_SUSeconds_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_Time = struct open Int32 type t = int end +functor C_Time_ChooseIntN (A: CHOOSE_INTN_ARG) = ChooseIntN_Int32 (A) +structure C_UId = struct open Word32 type t = word end +functor C_UId_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* from <sys/socket.h> *) +structure C_Socklen = struct open Word32 type t = word end +functor C_Socklen_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* from <termios.h> *) +structure C_CC = struct open Word8 type t = word end +functor C_CC_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word8 (A) +structure C_Speed = struct open Word32 type t = word end +functor C_Speed_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) +structure C_TCFlag = struct open Word32 type t = word end +functor C_TCFlag_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + +(* from "gmp.h" *) +structure C_MPLimb = struct open Word32 type t = word end +functor C_MPLimb_ChooseWordN (A: CHOOSE_WORDN_ARG) = ChooseWordN_Word32 (A) + |
|
From: Matthew F. <fl...@ml...> - 2006-05-27 09:16:23
|
'struct sigcontext' no longer available in NetBSD 3.0.
----------------------------------------------------------------------
U mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.c
----------------------------------------------------------------------
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.c 2006-05-27 14:56:16 UTC (rev 4614)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/platform/netbsd.c 2006-05-27 16:16:19 UTC (rev 4615)
@@ -9,12 +9,12 @@
#include "use-mmap.c"
static void catcher (__attribute__ ((unused)) int sig,
- __attribute__ ((unused)) int code,
- struct sigcontext *ucp) {
- GC_handleSigProf ((code_pointer) ucp->sc_eip);
+ __attribute__ ((unused)) siginfo_t *sip,
+ ucontext_t *ucp) {
+ GC_handleSigProf ((code_pointer) ucp->uc_mcontext.__gregs[_REG_EIP]);
}
void GC_setSigProfHandler (struct sigaction *sa) {
sa->sa_flags = SA_ONSTACK | SA_RESTART;
- sa->sa_handler = (void (*)(int))catcher;
+ sa->sa_sigaction = (void (*)(int, siginfo_t*, void*))catcher;
}
|
|
From: Matthew F. <fl...@ml...> - 2006-05-27 07:56:16
|
The libc for NetBSD 3.0 implements tolower/toupper via indexing into a
table; cast from 'char' to 'int' at the argument to quell gcc warning;
cast from 'int' to 'char' at return for consistency.
----------------------------------------------------------------------
U mlton/branches/on-20050822-x86_64-branch/runtime/gen/gen-types.c
----------------------------------------------------------------------
Modified: mlton/branches/on-20050822-x86_64-branch/runtime/gen/gen-types.c
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/runtime/gen/gen-types.c 2006-05-27 14:54:14 UTC (rev 4613)
+++ mlton/branches/on-20050822-x86_64-branch/runtime/gen/gen-types.c 2006-05-27 14:56:16 UTC (rev 4614)
@@ -153,10 +153,10 @@
do { \
char *btLower = strdup(bt); \
for (size_t i = 0; i < strlen(btLower); i++) \
- btLower[i] = tolower(bt[i]); \
+ btLower[i] = (char)(tolower((int)(bt[i]))); \
char *btUpper = strdup(bt); \
for (size_t i = 0; i < strlen(btUpper); i++) \
- btUpper[i] = toupper(bt[i]); \
+ btUpper[i] = (char)(toupper((int)(bt[i]))); \
writeString (cTypesHFd, "typedef "); \
writeString (cTypesHFd, "/* "); \
writeString (cTypesHFd, #t); \
@@ -228,10 +228,10 @@
do { \
char *btLower = strdup(bt); \
for (size_t i = 0; i < strlen(btLower); i++) \
- btLower[i] = tolower(bt[i]); \
+ btLower[i] = (char)(tolower((int)(bt[i]))); \
char *btUpper = strdup(bt); \
for (size_t i = 0; i < strlen(btUpper); i++) \
- btUpper[i] = toupper(bt[i]); \
+ btUpper[i] = (char)(toupper((int)(bt[i]))); \
writeString (cTypesHFd, "typedef "); \
writeString (cTypesHFd, "C_"); \
writeString (cTypesHFd, name1); \
|