diff --git a/src/asmjit/core.h b/src/asmjit/core.h index e8cea1d..d0fb214 100644 --- a/src/asmjit/core.h +++ b/src/asmjit/core.h @@ -2044,10 +2044,14 @@ namespace asmjit { #ifndef ASMJIT_NO_DEPRECATED namespace asmjit { +#ifndef ASMJIT_NO_COMPILER ASMJIT_DEPRECATED("Use InvokeNode instead of FuncCallNode") typedef InvokeNode FuncCallNode; +#endif // !ASMJIT_NO_COMPILER +#ifndef ASMJIT_NO_LOGGING namespace Logging { using namespace Formatter; } +#endif //! ASMJIT_NO_LOGGING } // {asmjit} #endif // !ASMJIT_NO_DEPRECATED diff --git a/src/asmjit/core/assembler.cpp b/src/asmjit/core/assembler.cpp index ac26bd6..2eea9cb 100644 --- a/src/asmjit/core/assembler.cpp +++ b/src/asmjit/core/assembler.cpp @@ -197,7 +197,10 @@ Error BaseAssembler::embedDataArray(uint32_t typeId, const void* data, size_t it CodeBufferWriter writer(this); ASMJIT_PROPAGATE(writer.ensureSpace(this, totalSize)); +#ifndef ASMJIT_NO_LOGGING const uint8_t* start = writer.cursor(); +#endif + for (size_t i = 0; i < repeatCount; i++) { writer.emitData(data, dataSize); } diff --git a/src/asmjit/core/codeholder.cpp b/src/asmjit/core/codeholder.cpp index 12d1983..8711e38 100644 --- a/src/asmjit/core/codeholder.cpp +++ b/src/asmjit/core/codeholder.cpp @@ -255,7 +255,7 @@ Error CodeHolder::detach(BaseEmitter* emitter) noexcept { } // ============================================================================ -// [asmjit::CodeHolder - Logging & Error Handling] +// [asmjit::CodeHolder - Logging] // ============================================================================ void CodeHolder::setLogger(Logger* logger) noexcept { @@ -267,6 +267,15 @@ void CodeHolder::setLogger(Logger* logger) noexcept { #endif } +// ============================================================================ +// [asmjit::CodeHolder - Error Handling] +// ============================================================================ + +void CodeHolder::setErrorHandler(ErrorHandler* errorHandler) noexcept { + _errorHandler = errorHandler; + CodeHolder_onSettingsUpdated(this); +} + // ============================================================================ // [asmjit::CodeHolder - Code Buffer] // ============================================================================ diff --git a/src/asmjit/core/codeholder.h b/src/asmjit/core/codeholder.h index 1abb36f..9b3466d 100644 --- a/src/asmjit/core/codeholder.h +++ b/src/asmjit/core/codeholder.h @@ -637,7 +637,7 @@ public: //! Returns the attached error handler. inline ErrorHandler* errorHandler() const noexcept { return _errorHandler; } //! Attach an error handler to this `CodeHolder`. - inline void setErrorHandler(ErrorHandler* handler) noexcept { _errorHandler = handler; } + ASMJIT_API void setErrorHandler(ErrorHandler* errorHandler) noexcept; //! Resets the error handler to none. inline void resetErrorHandler() noexcept { setErrorHandler(nullptr); } diff --git a/src/asmjit/core/emitter.h b/src/asmjit/core/emitter.h index 37cbe4b..cfdb695 100644 --- a/src/asmjit/core/emitter.h +++ b/src/asmjit/core/emitter.h @@ -666,8 +666,6 @@ public: //! called). //! - \ref ErrorHandler has been changed (\ref CodeHolder::setErrorHandler() //! has been called). - //! - Emitter options have been changed (\ref CodeHolder::addEmitterOptions() - //! or \ref CodeHolder::clearEmitterOptions() have been called). //! //! This function ensures that the settings are properly propagated from //! \ref CodeHolder to the emitter.