Add evmc and host interface implementation. Modify fuzzer harness to make use of evmc host/vm.

This commit is contained in:
Christian Parpart
2019-07-17 10:55:33 +02:00
committed by Bhargava Shastry
parent 4fa7800458
commit 810a0de1aa
21 changed files with 2869 additions and 14 deletions
+36
View File
@@ -0,0 +1,36 @@
/* EVMC: Ethereum Client-VM Connector API.
* Copyright 2018-2019 The EVMC Authors.
* Licensed under the Apache License, Version 2.0.
*/
#pragma once
/**
* @file
* A collection of helper macros to handle some non-portable features of C/C++ compilers.
*
* @addtogroup helpers
* @{
*/
/**
* @def EVMC_EXPORT
* Marks a function to be exported from a shared library.
*/
#if defined _MSC_VER || defined __MINGW32__
#define EVMC_EXPORT __declspec(dllexport)
#else
#define EVMC_EXPORT __attribute__((visibility("default")))
#endif
/**
* @def EVMC_NOEXCEPT
* Safe way of marking a function with `noexcept` C++ specifier.
*/
#if __cplusplus
#define EVMC_NOEXCEPT noexcept
#else
#define EVMC_NOEXCEPT
#endif
/** @} */