lottie/render: add neon path srcOver compostion mode for solid src.
[platform/core/uifw/lottie-player.git] / src / vector / vdrawhelper_neon.cpp
index 49502d1..806a8b5 100644 (file)
@@ -9,6 +9,13 @@ pixman_composite_src_n_8888_asm_neon (int32_t   w,
                                       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)
 {
     pixman_composite_src_n_8888_asm_neon(length,
@@ -18,4 +25,16 @@ void memfill32(uint32_t *dest, uint32_t value, int length)
                                          value);
 }
 
+void
+comp_func_solid_SourceOver_neon(uint32_t *dest, int length, uint32_t color,
+                                uint32_t const_alpha)
+{
+    if (const_alpha != 255) color = BYTE_MUL(color, const_alpha);
+
+    pixman_composite_over_n_8888_asm_neon(length,
+                                          1,
+                                          dest,
+                                          length,
+                                          color);
+}
 #endif