Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion src/Compiler/AbstractIL/ilread.fs
Original file line number Diff line number Diff line change
Expand Up @@ -1141,6 +1141,7 @@ type ILMetadataReader =
seekReadMemberRefAsFieldSpec: MemberRefAsFspecIdx -> ILFieldSpec
seekReadCustomAttr: CustomAttrIdx -> ILAttribute
seekReadTypeRef: int -> ILTypeRef
seekReadTypeDefAsTypeRef: int -> ILTypeRef
seekReadTypeRefAsType: TypeRefAsTypIdx -> ILType
readBlobHeapAsPropertySig: BlobAsPropSigIdx -> ILThisConvention * ILType * ILTypes
readBlobHeapAsFieldSig: BlobAsFieldSigIdx -> ILType
Expand Down Expand Up @@ -2334,7 +2335,10 @@ and seekReadTypeDefAsTypeUncached ctxtH (TypeDefAsTypIdx(boxity, ginst, idx)) =
let ctxt = getHole ctxtH
mkILTy boxity (ILTypeSpec.Create(seekReadTypeDefAsTypeRef ctxt idx, ginst))

and seekReadTypeDefAsTypeRef (ctxt: ILMetadataReader) idx =
and seekReadTypeDefAsTypeRef (ctxt: ILMetadataReader) idx = ctxt.seekReadTypeDefAsTypeRef idx

and seekReadTypeDefAsTypeRefUncached ctxtH idx =
let (ctxt: ILMetadataReader) = getHole ctxtH
let mdv = ctxt.mdfile.GetView()

let enc =
Expand Down Expand Up @@ -4504,6 +4508,9 @@ let openMetadataReader
let cacheTypeDefAsType =
mkCacheGeneric reduceMemoryUsage inbase "TypeDefAsType" (getNumRows TableNames.TypeDef / 20 + 1)

let cacheTypeDefAsTypeRef =
mkCacheGeneric false inbase "TypeDefAsTypeRef" 0

let cacheMethodDefAsMethodData =
mkCacheGeneric reduceMemoryUsage inbase "MethodDefAsMethodData" (getNumRows TableNames.Method / 20 + 1)

Expand Down Expand Up @@ -4575,6 +4582,7 @@ let openMetadataReader
seekReadMemberRefAsFieldSpec = seekReadMemberRefAsFieldSpecUncached ctxtH
seekReadCustomAttr = cacheCustomAttr (seekReadCustomAttrUncached ctxtH)
seekReadTypeRef = cacheTypeRef (seekReadTypeRefUncached ctxtH)
seekReadTypeDefAsTypeRef = cacheTypeDefAsTypeRef (seekReadTypeDefAsTypeRefUncached ctxtH)
readBlobHeapAsPropertySig = cacheBlobHeapAsPropertySig (readBlobHeapAsPropertySigUncached ctxtH)
readBlobHeapAsFieldSig = cacheBlobHeapAsFieldSig (readBlobHeapAsFieldSigUncached ctxtH)
readBlobHeapAsMethodSig = cacheBlobHeapAsMethodSig (readBlobHeapAsMethodSigUncached ctxtH)
Expand Down
Loading