1
1
mirror of https://github.com/tweag/asterius.git synced 2024-09-19 21:07:55 +03:00

Remove Memory/Table exports (#595)

This commit is contained in:
George Karachalias 2020-04-20 15:03:22 +02:00 committed by GitHub
parent aa4be1a7b8
commit 5955c1714d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 0 additions and 56 deletions

View File

@ -577,18 +577,6 @@ marshalMemoryImport m MemoryImport {..} = flip runContT pure $ do
ebp <- marshalBS externalBaseName
lift $ Binaryen.addMemoryImport m inp emp ebp 0
marshalTableExport :: Binaryen.Module -> TableExport -> IO Binaryen.Export
marshalTableExport m TableExport {..} = flip runContT pure $ do
inp <- marshalBS "0"
enp <- marshalBS externalName
lift $ Binaryen.addTableExport m inp enp
marshalMemoryExport :: Binaryen.Module -> MemoryExport -> IO Binaryen.Export
marshalMemoryExport m MemoryExport {..} = flip runContT pure $ do
inp <- marshalBS "0"
enp <- marshalBS externalName
lift $ Binaryen.addMemoryExport m inp enp
marshalModule ::
Bool -> SM.SymbolMap Int64 -> Module -> IO Binaryen.Module
marshalModule tail_calls sym_map hs_mod@Module {..} = do
@ -614,10 +602,8 @@ marshalModule tail_calls sym_map hs_mod@Module {..} = do
forM_ functionExports $ marshalFunctionExport m
marshalFunctionTable m tableSlots functionTable
marshalTableImport m tableImport
void $ marshalTableExport m tableExport
flip runReaderT env $ marshalMemorySegments memoryMBlocks memorySegments
marshalMemoryImport m memoryImport
void $ marshalMemoryExport m memoryExport
flip runContT pure $ do
lim_segs <- marshalBS "limit-segments"
(lim_segs_p, _) <- marshalV [lim_segs]

View File

@ -166,26 +166,6 @@ makeExportSection Module {..} ModuleSymbolTable {..} = pure Wasm.ExportSection
}
| FunctionExport {..} <- functionExports
]
<> ( case memoryExport of
MemoryExport {..} ->
[ Wasm.Export
{ exportName = coerce $ SBS.toShort externalName,
exportDescription =
Wasm.ExportMemory $
Wasm.MemoryIndex 0
}
]
)
<> ( case tableExport of
TableExport {..} ->
[ Wasm.Export
{ exportName = coerce $ SBS.toShort externalName,
exportDescription =
Wasm.ExportTable $
Wasm.TableIndex 0
}
]
)
}
makeElementSection ::

View File

@ -90,14 +90,12 @@ resolveAsteriusModule debug bundled_ffi_state m_globals_resolved func_start_addr
{ externalModuleName = "WasmTable",
externalBaseName = "table"
},
tableExport = TableExport {externalName = "table"},
tableSlots = table_slots,
memorySegments = segs,
memoryImport = MemoryImport
{ externalModuleName = "WasmMemory",
externalBaseName = "memory"
},
memoryExport = MemoryExport {externalName = "memory"},
memoryMBlocks = initial_mblocks
}

View File

@ -30,8 +30,6 @@ module Asterius.Types
TableImport (..),
MemoryImport (..),
FunctionExport (..),
TableExport (..),
MemoryExport (..),
FunctionTable (..),
DataSegment (..),
Module (..),
@ -49,11 +47,9 @@ module Asterius.Types
)
where
import Asterius.Binary.Orphans ()
import Asterius.Binary.TH
import Asterius.Types.EntitySymbol
import Asterius.Types.SymbolMap
import qualified Binary as GHC
import Control.Exception
import qualified Data.ByteString as BS
import Data.Data
@ -435,20 +431,6 @@ data FunctionExport
}
deriving (Show, Data)
newtype TableExport
= TableExport
{ externalName :: BS.ByteString
}
deriving (Show, Data)
deriving newtype (GHC.Binary)
newtype MemoryExport
= MemoryExport
{ externalName :: BS.ByteString
}
deriving (Show, Data)
deriving newtype (GHC.Binary)
data FunctionTable
= FunctionTable
{ tableFunctionNames :: [BS.ByteString],
@ -470,11 +452,9 @@ data Module
functionExports :: [FunctionExport],
functionTable :: FunctionTable,
tableImport :: TableImport,
tableExport :: TableExport,
tableSlots :: Int,
memorySegments :: [DataSegment],
memoryImport :: MemoryImport,
memoryExport :: MemoryExport,
memoryMBlocks :: Int
}
deriving (Show, Data)