LCOV - code coverage report
Current view: top level - asmjit - inst.cpp (source / functions) Hit Total Coverage
Test: plumed test coverage (other modules) Lines: 0 6 0.0 %
Date: 2024-10-18 14:00:27 Functions: 0 2 0.0 %

          Line data    Source code
       1             : /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
       2             : Copyright (c) 2008-2017, Petr Kobalicek
       3             : 
       4             : This software is provided 'as-is', without any express or implied
       5             : warranty. In no event will the authors be held liable for any damages
       6             : arising from the use of this software.
       7             : 
       8             : Permission is granted to anyone to use this software for any purpose,
       9             : including commercial applications, and to alter it and redistribute it
      10             : freely, subject to the following restrictions:
      11             : 
      12             : 1. The origin of this software must not be misrepresented; you must not
      13             :    claim that you wrote the original software. If you use this software
      14             :    in a product, an acknowledgment in the product documentation would be
      15             :    appreciated but is not required.
      16             : 2. Altered source versions must be plainly marked as such, and must not be
      17             :    misrepresented as being the original software.
      18             : 3. This notice may not be removed or altered from any source distribution.
      19             : +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
      20             : #ifdef __PLUMED_HAS_ASMJIT
      21             : #pragma GCC diagnostic push
      22             : #pragma GCC diagnostic ignored "-Wpedantic"
      23             : // [AsmJit]
      24             : // Complete x86/x64 JIT and Remote Assembler for C++.
      25             : //
      26             : // [License]
      27             : // Zlib - See LICENSE.md file in the package.
      28             : 
      29             : // [Export]
      30             : #define ASMJIT_EXPORTS
      31             : 
      32             : // [Guard]
      33             : #include "./asmjit_build.h"
      34             : #if defined(ASMJIT_BUILD_X86)
      35             : 
      36             : // [Dependencies]
      37             : #include "./arch.h"
      38             : #include "./inst.h"
      39             : 
      40             : #if defined(ASMJIT_BUILD_X86)
      41             : # include "./x86instimpl_p.h"
      42             : #endif // ASMJIT_BUILD_X86
      43             : 
      44             : #if defined(ASMJIT_BUILD_ARM)
      45             : # include "./arminstimpl_p.h"
      46             : #endif // ASMJIT_BUILD_ARM
      47             : 
      48             : // [Api-Begin]
      49             : #include "./asmjit_apibegin.h"
      50             : 
      51             : namespace PLMD {
      52             : namespace asmjit {
      53             : 
      54             : // ============================================================================
      55             : // [asmjit::Inst - Validate]
      56             : // ============================================================================
      57             : 
      58             : #if !defined(ASMJIT_DISABLE_VALIDATION)
      59           0 : Error Inst::validate(uint32_t archType, const Detail& detail, const Operand_* operands, uint32_t count) noexcept {
      60             :   #if defined(ASMJIT_BUILD_X86)
      61           0 :   if (ArchInfo::isX86Family(archType))
      62           0 :     return X86InstImpl::validate(archType, detail, operands, count);
      63             :   #endif
      64             : 
      65             :   #if defined(ASMJIT_BUILD_ARM)
      66             :   if (ArchInfo::isArmFamily(archType))
      67             :     return ArmInstImpl::validate(archType, detail, operands, count);
      68             :   #endif
      69             : 
      70             :   return DebugUtils::errored(kErrorInvalidArch);
      71             : }
      72             : #endif
      73             : 
      74             : // ============================================================================
      75             : // [asmjit::Inst - CheckFeatures]
      76             : // ============================================================================
      77             : 
      78             : #if !defined(ASMJIT_DISABLE_EXTENSIONS)
      79           0 : Error Inst::checkFeatures(uint32_t archType, const Detail& detail, const Operand_* operands, uint32_t count, CpuFeatures& out) noexcept {
      80             :   #if defined(ASMJIT_BUILD_X86)
      81           0 :   if (ArchInfo::isX86Family(archType))
      82           0 :     return X86InstImpl::checkFeatures(archType, detail, operands, count, out);
      83             :   #endif
      84             : 
      85             :   #if defined(ASMJIT_BUILD_ARM)
      86             :   if (ArchInfo::isArmFamily(archType))
      87             :     return ArmInstImpl::checkFeatures(archType, detail, operands, count, out);
      88             :   #endif
      89             : 
      90             :   return DebugUtils::errored(kErrorInvalidArch);
      91             : }
      92             : #endif // !defined(ASMJIT_DISABLE_EXTENSIONS)
      93             : 
      94             : } // asmjit namespace
      95             : } // namespace PLMD
      96             : 
      97             : // [Api-End]
      98             : #include "./asmjit_apiend.h"
      99             : 
     100             : // [Guard]
     101             : #endif // ASMJIT_BUILD_X86
     102             : #pragma GCC diagnostic pop
     103             : #endif // __PLUMED_HAS_ASMJIT

Generated by: LCOV version 1.16