(RPi) Added custom patch to rlottie to be able to link against it.

This commit is contained in:
Leon Styhre 2022-01-07 19:45:52 +01:00
parent 3ee4e4cb35
commit 29eceedde0

View file

@ -2,28 +2,22 @@
#include "vdrawhelper.h" #include "vdrawhelper.h"
extern "C" void pixman_composite_src_n_8888_asm_neon(int32_t w, int32_t h, #include <cstring>
uint32_t *dst,
int32_t dst_stride,
uint32_t src);
extern "C" void pixman_composite_over_n_8888_asm_neon(int32_t w, int32_t h,
uint32_t *dst,
int32_t dst_stride,
uint32_t src);
void memfill32(uint32_t *dest, uint32_t value, int length) void memfill32(uint32_t *dest, uint32_t value, int length)
{ {
pixman_composite_src_n_8888_asm_neon(length, 1, dest, length, value); memset(dest, value, length);
} }
static void color_SourceOver(uint32_t *dest, int length, static void color_SourceOver(uint32_t *dest, int length,
uint32_t color, uint32_t color,
uint32_t const_alpha) uint32_t alpha)
{ {
if (const_alpha != 255) color = BYTE_MUL(color, const_alpha); int ialpha, i;
pixman_composite_over_n_8888_asm_neon(length, 1, dest, length, color); if (alpha != 255) color = BYTE_MUL(color, alpha);
ialpha = 255 - vAlpha(color);
for (i = 0; i < length; ++i) dest[i] = color + BYTE_MUL(dest[i], ialpha);
} }
void RenderFuncTable::neon() void RenderFuncTable::neon()