Navigation Menu

Skip to content

Commit

Permalink
AsmJit update
Browse files Browse the repository at this point in the history
  • Loading branch information
kobalicek committed Jul 20, 2019
1 parent c262591 commit e1d5a17
Show file tree
Hide file tree
Showing 164 changed files with 51,857 additions and 45,069 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Expand Up @@ -25,3 +25,5 @@
/build2
/build_vc2019-64
/build_vc2019-32
.kdev4
*.kdev4
214 changes: 127 additions & 87 deletions libraries/asmjit/CMakeLists.txt
@@ -1,17 +1,22 @@
cmake_minimum_required(VERSION 2.8.7)

#make_release_only()

project(asmjit C)
project(asmjit CXX)

set(ASMJITNAME asmjit)

add_definitions(-DASMJIT_BUILD_EMBED)
add_definitions(-DASMJIT_STATIC)

if(CMAKE_VERSION VERSION_LESS "3.1")
if("${CMAKE_CXX_COMPILER_ID}" MATCHES "^(GNU|Clang|AppleClang)$")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
endif()
else()
set(CMAKE_CXX_STANDARD 11)
endif()

if(MSVC)
set(CMAKE_DEBUG_POSTFIX "d")
add_definitions(-D_CRT_NONSTDC_NO_DEPRECATE)
set(CMAKE_DEBUG_POSTFIX "d")
add_definitions(-D_CRT_NONSTDC_NO_DEPRECATE)
endif()

if(APPLE)
Expand All @@ -21,92 +26,127 @@ endif()

include_directories(${CMAKE_CURRENT_SOURCE_DIR})

set(ASMJIT_PUBLIC_HDRS
asmjit/arm.h
asmjit/asmjit.h
asmjit/asmjit_apibegin.h
asmjit/asmjit_apiend.h
asmjit/asmjit_build.h
asmjit/base.h
asmjit/base/arch.h
asmjit/base/assembler.h
asmjit/base/codebuilder.h
asmjit/base/codecompiler.h
asmjit/base/codeemitter.h
asmjit/base/codeholder.h
asmjit/base/constpool.h
asmjit/base/cpuinfo.h
asmjit/base/func.h
asmjit/base/globals.h
asmjit/base/inst.h
asmjit/base/logging.h
asmjit/base/misc_p.h
asmjit/base/operand.h
asmjit/base/osutils.h
asmjit/base/regalloc_p.h
asmjit/base/runtime.h
asmjit/base/simdtypes.h
asmjit/base/string.h
asmjit/base/utils.h
asmjit/base/vmem.h
asmjit/base/zone.h
asmjit/x86.h
asmjit/x86/x86assembler.h
asmjit/x86/x86builder.h
asmjit/x86/x86compiler.h
asmjit/x86/x86emitter.h
asmjit/x86/x86globals.h
asmjit/x86/x86inst.h
asmjit/x86/x86instimpl_p.h
asmjit/x86/x86internal_p.h
asmjit/x86/x86logging_p.h
asmjit/x86/x86misc.h
asmjit/x86/x86operand.h
asmjit/x86/x86regalloc_p.h
)
set(ASMJIT_SRCS
asmjit/base/arch.cpp
asmjit/base/assembler.cpp
asmjit/base/codebuilder.cpp
asmjit/base/codecompiler.cpp
asmjit/base/codeemitter.cpp
asmjit/base/codeholder.cpp
asmjit/base/constpool.cpp
asmjit/base/cpuinfo.cpp
asmjit/base/func.cpp
asmjit/base/globals.cpp
asmjit/base/inst.cpp
asmjit/base/logging.cpp
asmjit/base/operand.cpp
asmjit/base/osutils.cpp
asmjit/base/regalloc.cpp
asmjit/base/runtime.cpp
asmjit/base/string.cpp
asmjit/base/utils.cpp
asmjit/base/vmem.cpp
asmjit/base/zone.cpp
asmjit/x86/x86assembler.cpp
asmjit/x86/x86builder.cpp
asmjit/x86/x86compiler.cpp
asmjit/x86/x86inst.cpp
asmjit/x86/x86instimpl.cpp
asmjit/x86/x86internal.cpp
asmjit/x86/x86logging.cpp
asmjit/x86/x86operand.cpp
asmjit/x86/x86operand_regs.cpp
asmjit/x86/x86regalloc.cpp
asmjit/asmjit.h

asmjit/core.h
asmjit/core/build.h
asmjit/core/arch.cpp
asmjit/core/arch.h
asmjit/core/assembler.cpp
asmjit/core/assembler.h
asmjit/core/builder.cpp
asmjit/core/builder.h
asmjit/core/callconv.cpp
asmjit/core/callconv.h
asmjit/core/codebufferwriter_p.h
asmjit/core/codeholder.cpp
asmjit/core/codeholder.h
asmjit/core/compiler.cpp
asmjit/core/compiler.h
asmjit/core/constpool.cpp
asmjit/core/constpool.h
asmjit/core/cpuinfo.cpp
asmjit/core/cpuinfo.h
asmjit/core/datatypes.h
asmjit/core/emitter.cpp
asmjit/core/emitter.h
asmjit/core/features.h
asmjit/core/func.cpp
asmjit/core/func.h
asmjit/core/globals.cpp
asmjit/core/globals.h
asmjit/core/inst.cpp
asmjit/core/inst.h
asmjit/core/jitallocator.cpp
asmjit/core/jitallocator.h
asmjit/core/jitruntime.cpp
asmjit/core/jitruntime.h
asmjit/core/logging.cpp
asmjit/core/logging.h
asmjit/core/misc_p.h
asmjit/core/operand.cpp
asmjit/core/operand.h
asmjit/core/osutils.cpp
asmjit/core/osutils.h
asmjit/core/raassignment_p.h
asmjit/core/rabuilders_p.h
asmjit/core/radefs_p.h
asmjit/core/ralocal.cpp
asmjit/core/ralocal_p.h
asmjit/core/rapass.cpp
asmjit/core/rapass_p.h
asmjit/core/rastack.cpp
asmjit/core/rastack_p.h
asmjit/core/string.cpp
asmjit/core/string.h
asmjit/core/support.cpp
asmjit/core/support.h
asmjit/core/target.cpp
asmjit/core/target.h
asmjit/core/type.cpp
asmjit/core/type.h
asmjit/core/virtmem.cpp
asmjit/core/virtmem.h
asmjit/core/zone.cpp
asmjit/core/zone.h
asmjit/core/zonehash.cpp
asmjit/core/zonehash.h
asmjit/core/zonelist.cpp
asmjit/core/zonelist.h
asmjit/core/zonestack.cpp
asmjit/core/zonestack.h
asmjit/core/zonestring.h
asmjit/core/zonetree.cpp
asmjit/core/zonetree.h
asmjit/core/zonevector.cpp
asmjit/core/zonevector.h

asmjit/x86.h
asmjit/x86/x86assembler.cpp
asmjit/x86/x86assembler.h
asmjit/x86/x86builder.cpp
asmjit/x86/x86builder.h
asmjit/x86/x86callconv.cpp
asmjit/x86/x86callconv_p.h
asmjit/x86/x86compiler.cpp
asmjit/x86/x86compiler.h
asmjit/x86/x86emitter.h
asmjit/x86/x86features.cpp
asmjit/x86/x86features.h
asmjit/x86/x86globals.h
asmjit/x86/x86instapi.cpp
asmjit/x86/x86instapi_p.h
asmjit/x86/x86instdb.cpp
asmjit/x86/x86instdb.h
asmjit/x86/x86instdb_p.h
asmjit/x86/x86internal.cpp
asmjit/x86/x86internal_p.h
asmjit/x86/x86logging.cpp
asmjit/x86/x86logging_p.h
asmjit/x86/x86opcode_p.h
asmjit/x86/x86operand.cpp
asmjit/x86/x86operand.h
asmjit/x86/x86rapass.cpp
asmjit/x86/x86rapass_p.h
)

add_library(${ASMJITNAME} STATIC ${ASMJIT_SRCS} ${ASMJIT_PUBLIC_HDRS})
set(ASMJIT_PUBLIC_HDRS "")
foreach(_src_file ${ASMJIT_SRCS})
if ("${_src_file}" MATCHES "\\.h$" AND NOT "${_src_file}" MATCHES "_p\\.h$")
list(APPEND ASMJIT_PUBLIC_HDRS ${_src_file})
endif()
endforeach()

add_library(${ASMJITNAME} STATIC ${ASMJIT_SRCS})
set_target_properties(${ASMJITNAME} PROPERTIES OUTPUT_NAME asmjit)

if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL )
install(TARGETS ${ASMJITNAME}
RUNTIME DESTINATION bin
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib )
if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL)
install(TARGETS ${ASMJITNAME}
RUNTIME DESTINATION bin
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib)
endif()
if(NOT SKIP_INSTALL_HEADERS AND NOT SKIP_INSTALL_ALL )
install(FILES ${ASMJIT_PUBLIC_HDRS} DESTINATION include)
if(NOT SKIP_INSTALL_HEADERS AND NOT SKIP_INSTALL_ALL)
install(FILES ${ASMJIT_PUBLIC_HDRS} DESTINATION include)
endif()
21 changes: 0 additions & 21 deletions libraries/asmjit/asmjit/arm.h

This file was deleted.

48 changes: 21 additions & 27 deletions libraries/asmjit/asmjit/asmjit.h
@@ -1,47 +1,41 @@
// [AsmJit]
// Complete x86/x64 JIT and Remote Assembler for C++.
// Machine Code Generation for C++.
//
// [License]
// Zlib - See LICENSE.md file in the package.

// [Guard]
#ifndef _ASMJIT_ASMJIT_H
#define _ASMJIT_ASMJIT_H

// ============================================================================
// [asmjit_mainpage]
// ============================================================================

//! \mainpage
//! \mainpage API Reference
//!
//! AsmJit - Complete x86/x64 JIT and Remote Assembler for C++.
//! AsmJit C++ API reference documentation generated by Doxygen.
//!
//! Introduction provided by the project page at https://github.com/asmjit/asmjit.

//! \defgroup asmjit_base AsmJit Base API (architecture independent)
//!
//! \brief Backend Neutral API.

//! \defgroup asmjit_x86 AsmJit X86/X64 API
//! \section main_groups Groups
//!
//! The documentation is split into the following groups:
//!
//! $$DOCS_GROUP_OVERVIEW$$
//!
//! \section main_other Other Pages
//!
//! \brief X86/X64 Backend API.
//! - <a href="annotated.html">Class List</a> - List of classes sorted alphabetically
//! - <a href="namespaceasmjit.html">AsmJit Namespace</a> - List of symbols provided by `asmjit` namespace

//! \defgroup asmjit_arm AsmJit ARM32/ARM64 API
//! \namespace asmjit
//!
//! \brief ARM32/ARM64 Backend API.
//! Root namespace used by AsmJit.

// [Dependencies]
#include "./base.h"
#include "./core.h"

// [X86/X64]
#if defined(ASMJIT_BUILD_X86)
#include "./x86.h"
#endif // ASMJIT_BUILD_X86
#ifdef ASMJIT_BUILD_X86
#include "./x86.h"
#endif

// [ARM32/ARM64]
#if defined(ASMJIT_BUILD_ARM)
#include "./arm.h"
#endif // ASMJIT_BUILD_ARM
#ifdef ASMJIT_BUILD_ARM
#include "./arm.h"
#endif

// [Guard]
#endif // _ASMJIT_ASMJIT_H

0 comments on commit e1d5a17

Please sign in to comment.