Use new ScopedDenormalDisable class
Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
parent
a1d2dbc67f
commit
68c94903e3
2 changed files with 3 additions and 18 deletions
2
dpf
2
dpf
|
|
@ -1 +1 @@
|
||||||
Subproject commit 0057b1940c84e7ecbfd192fe02bf03c557f1ee93
|
Subproject commit ed3bc5f869874c5fd862fd0fd58bd52f3c0c2d54
|
||||||
|
|
@ -45,6 +45,7 @@
|
||||||
#include "DistrhoPluginUtils.hpp"
|
#include "DistrhoPluginUtils.hpp"
|
||||||
#include "PluginContext.hpp"
|
#include "PluginContext.hpp"
|
||||||
#include "extra/Base64.hpp"
|
#include "extra/Base64.hpp"
|
||||||
|
#include "extra/ScopedDenormalDisable.hpp"
|
||||||
#include "extra/ScopedSafeLocale.hpp"
|
#include "extra/ScopedSafeLocale.hpp"
|
||||||
|
|
||||||
#ifdef DISTRHO_OS_WASM
|
#ifdef DISTRHO_OS_WASM
|
||||||
|
|
@ -1192,23 +1193,7 @@ protected:
|
||||||
void run(const float** const inputs, float** const outputs, const uint32_t frames,
|
void run(const float** const inputs, float** const outputs, const uint32_t frames,
|
||||||
const MidiEvent* const midiEvents, const uint32_t midiEventCount) override
|
const MidiEvent* const midiEvents, const uint32_t midiEventCount) override
|
||||||
{
|
{
|
||||||
// TESTING make this revert itself if proven to work
|
const ScopedDenormalDisable sdd;
|
||||||
#if defined(__SSE2_MATH__)
|
|
||||||
_mm_setcsr(_mm_getcsr() | 0x8040);
|
|
||||||
#elif defined(__aarch64__)
|
|
||||||
uint64_t c;
|
|
||||||
__asm__ __volatile__("mrs %0, fpcr \n"
|
|
||||||
"orr %0, %0, #0x1000000\n"
|
|
||||||
"msr fpcr, %0 \n"
|
|
||||||
"isb \n"
|
|
||||||
: "=r"(c) :: "memory");
|
|
||||||
#elif defined(__arm__) && !defined(__SOFTFP__)
|
|
||||||
uint32_t c;
|
|
||||||
__asm__ __volatile__("vmrs %0, fpscr \n"
|
|
||||||
"orr %0, %0, #0x1000000\n"
|
|
||||||
"vmsr fpscr, %0 \n"
|
|
||||||
: "=r"(c) :: "memory");
|
|
||||||
#endif
|
|
||||||
|
|
||||||
rack::contextSet(context);
|
rack::contextSet(context);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue