[gegl] buffer: add code paths for 5,6 and 12bpp in nearest scaler
- From: Øyvind "pippin" Kolås <ok src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gegl] buffer: add code paths for 5,6 and 12bpp in nearest scaler
- Date: Sun, 24 May 2020 03:37:29 +0000 (UTC)
commit 4502894850bcc1f878f21671e2f880d29119e43c
Author: Øyvind Kolås <pippin gimp org>
Date: Sun May 24 05:31:04 2020 +0200
buffer: add code paths for 5,6 and 12bpp in nearest scaler
gegl/buffer/gegl-algorithms.c | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
---
diff --git a/gegl/buffer/gegl-algorithms.c b/gegl/buffer/gegl-algorithms.c
index 31a9d010f..6545ee97c 100644
--- a/gegl/buffer/gegl-algorithms.c
+++ b/gegl/buffer/gegl-algorithms.c
@@ -1284,18 +1284,41 @@ gegl_resample_nearest (guchar *dst,
d[2] = s[*(ijj++) + 2];
);
break;
+ case 5:IMPL(
+ uint32_t* d32 = (void*) d;
+ const uint32_t* s32 = (void*) &s[*(ijj++)];
+ d32[0] = s32[0];
+ d[4] = s[4];
+ );
+ break;
case 4:IMPL(
uint32_t* d32 = (void*) d;
const uint32_t* s32 = (void*) &s[*(ijj++)];
d32[0] = s32[0];
);
break;
+ case 6:IMPL(
+ uint32_t* d32 = (void*) d;
+ const uint32_t* s32 = (void*) &s[*(ijj++)];
+ d32[0] = s32[0];
+ d[4] = s[4];
+ d[5] = s[5];
+ );
+ break;
case 8:IMPL(
uint64_t* d64 = (void*) d;
const uint64_t* s64 = (void*) &s[*(ijj++)];
d64[0] = s64[0];
);
break;
+ case 12:IMPL(
+ uint32_t* d32 = (void*) d;
+ const uint32_t* s32 = (void*) &s[*(ijj++)];
+ d32[0] = s32[0];
+ d32[1] = s32[1];
+ d32[2] = s32[2];
+ );
+ break;
case 16:IMPL(
uint64_t* d64 = (void*) d;
const uint64_t* s64 = (void*) &s[*(ijj++)];
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]