summaryrefslogtreecommitdiff
path: root/src/vm/pefingerprint.h
diff options
context:
space:
mode:
authorJiyoung Yun <jy910.yun@samsung.com>2017-04-13 14:17:19 +0900
committerJiyoung Yun <jy910.yun@samsung.com>2017-04-13 14:17:19 +0900
commita56e30c8d33048216567753d9d3fefc2152af8ac (patch)
tree7e5d979695fc4a431740982eb1cfecc2898b23a5 /src/vm/pefingerprint.h
parent4b11dc566a5bbfa1378d6266525c281b028abcc8 (diff)
downloadcoreclr-a56e30c8d33048216567753d9d3fefc2152af8ac.tar.gz
coreclr-a56e30c8d33048216567753d9d3fefc2152af8ac.tar.bz2
coreclr-a56e30c8d33048216567753d9d3fefc2152af8ac.zip
Imported Upstream version 2.0.0.11353upstream/2.0.0.11353
Diffstat (limited to 'src/vm/pefingerprint.h')
-rw-r--r--src/vm/pefingerprint.h89
1 files changed, 0 insertions, 89 deletions
diff --git a/src/vm/pefingerprint.h b/src/vm/pefingerprint.h
index 357351f4ae..8db8df729a 100644
--- a/src/vm/pefingerprint.h
+++ b/src/vm/pefingerprint.h
@@ -11,95 +11,6 @@
#define PEFINGERPRINT_H_
-#ifdef FEATURE_FUSION
-
-#include "corcompile.h"
-
-class PEImage;
-
-//==================================================================================
-// This is the implementation of IILFingerprint object maintained by PEImage objects.
-// IILFingerprint is described in detail in IILFingerprint.h
-//==================================================================================
-class PEFingerprint : public IILFingerprint
-{
- public:
- //----------------------------------------------------------------
- // IILFingerprint methods
- //----------------------------------------------------------------
- STDMETHOD_(ULONG, AddRef)();
- STDMETHOD_(ULONG, Release)();
- STDMETHOD_(BOOL, CommitAndCompare)(ILFingerprintTag componentType, LPCVOID data);
- STDMETHOD_(BOOL, CommitAndCompareMulti)(UINT numComponents, const ILFingerprintComponent *pComponents);
- STDMETHOD_(void, LockAndLoadIL)();
-
- //----------------------------------------------------------------
- // Non-interface public methods.
- //----------------------------------------------------------------
- public:
- static PEFingerprint* PEFingerprint::CreatePEFingerprint(PEImage *owner);
- virtual ~PEFingerprint();
-
- private:
- PEFingerprint(PEImage *owner);
-
- //----------------------------------------------------------------
- // Private methods.
- //----------------------------------------------------------------
- private:
-
- BOOL IsComponentCommitted(ILFingerprintTag tag)
- {
- LIMITED_METHOD_CONTRACT;
- _ASSERTE(tag < ILFTagCount);
- return 0 != (m_commitMask & (1 << tag));
- }
-
- void SetComponentCommitted(ILFingerprintTag tag)
- {
- LIMITED_METHOD_CONTRACT;
- _ASSERTE(tag < ILFTagCount);
- m_commitMask |= (1 << tag);
- }
-
- LPVOID TagDataStart(ILFingerprintTag tag)
- {
- LIMITED_METHOD_CONTRACT;
- _ASSERTE(tag < ILFTagCount);
- return (LPVOID)(((LPBYTE)this) + s_offsets[tag]);
- }
-
- DWORD TagDataSize(ILFingerprintTag tag)
- {
- LIMITED_METHOD_CONTRACT;
- _ASSERTE(tag < ILFTagCount);
- return s_sizes[tag];
- }
-
-
- //----------------------------------------------------------------
- // Private instance data
- //----------------------------------------------------------------
- private:
- Crst *m_pcrst; // Synchronizes updates to fingerprint
- PEImage *m_peimage; // Backpointer to PEImage (for ref-counting purposes, the PEImage and PEFingerprint have the same identity)
- DWORD m_commitMask; // Bitmask to indicate which components have been committed ( fCommitted = (m_commitMask & (1 << tag)) )
- FILETIME m_timeStamp; // Component: File system lastwrite Timestamp
- DWORD m_size; // Component: File size
- GUID m_mvid; // Component: Mvid
-
- BOOL m_alreadyLoaded; // Turns repeated attempts to LockAndLoadIL() into NOP's
- HRESULT m_priorLockAndLoadFailure; // If LockAndLoadIL() failed the first time, return the same failure on subsequent attempts.
-
- //----------------------------------------------------------------
- // Private static data
- //----------------------------------------------------------------
- private:
- const static size_t s_offsets[ILFTagCount]; // static: Maps tags to offsets within PEFingerprint
- const static DWORD s_sizes[ILFTagCount]; // static: Maps tag to expected data size
-};
-
-#endif // FEATURE_FUSION
//==================================================================================