File 0005-fb-xlat-auto.m4-Replace-as_echo-with-AS_ECHO.patch of Package tme
From 93a3f89154ed0896a6aa1b544165bad7535647f6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <kkaempf@gmail.com>
Date: Thu, 3 Oct 2024 14:52:28 +0200
Subject: [PATCH 05/12] fb-xlat-auto.m4: Replace $as_echo with AS_ECHO()
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Klaus Kämpf <kkaempf@gmail.com>
---
generic/fb-xlat-auto.m4 | 2547 +++++++++++++++++++--------------------
1 file changed, 1273 insertions(+), 1274 deletions(-)
diff --git a/generic/fb-xlat-auto.m4 b/generic/fb-xlat-auto.m4
index e9bc82e..827ee4c 100644
--- a/generic/fb-xlat-auto.m4
+++ b/generic/fb-xlat-auto.m4
@@ -625,53 +625,53 @@ for src_key in ${src_all}; do
src_parts=${src_key}
# get the width:
- width=`$as_echo ${src_parts} | sed -e 's/^\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
- src_parts=`$as_echo ${src_parts} | sed -e 's/^\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
+ width=`AS_ECHO([${src_parts}])| sed -e 's/^\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
+ src_parts=`AS_ECHO([${src_parts}])| sed -e 's/^\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
# get the height:
- height=`$as_echo ${src_parts} | sed -e 's/^x\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
- src_parts=`$as_echo ${src_parts} | sed -e 's/^x\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
+ height=`AS_ECHO([${src_parts}])| sed -e 's/^x\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
+ src_parts=`AS_ECHO([${src_parts}])| sed -e 's/^x\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
# get the source depth:
- src_depth=`$as_echo ${src_parts} | sed -e 's/^d\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
- src_parts=`$as_echo ${src_parts} | sed -e 's/^d\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
+ src_depth=`AS_ECHO([${src_parts}])| sed -e 's/^d\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
+ src_parts=`AS_ECHO([${src_parts}])| sed -e 's/^d\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
# get the source bits per pixel:
- src_bipp=`$as_echo ${src_parts} | sed -e 's/^b\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
- src_parts=`$as_echo ${src_parts} | sed -e 's/^b\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
+ src_bipp=`AS_ECHO([${src_parts}])| sed -e 's/^b\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
+ src_parts=`AS_ECHO([${src_parts}])| sed -e 's/^b\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
# get the source skip pixel count:
- src_skipx=`$as_echo ${src_parts} | sed -e 's/^s\([[_0-9]][[0-9]]*\)\(.*\)$/\1/'`
- src_parts=`$as_echo ${src_parts} | sed -e 's/^s\([[_0-9]][[0-9]]*\)\(.*\)$/\2/'`
+ src_skipx=`AS_ECHO([${src_parts}])| sed -e 's/^s\([[_0-9]][[0-9]]*\)\(.*\)$/\1/'`
+ src_parts=`AS_ECHO([${src_parts}])| sed -e 's/^s\([[_0-9]][[0-9]]*\)\(.*\)$/\2/'`
# get the source scanline pad:
- src_pad=`$as_echo ${src_parts} | sed -e 's/^p\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
- src_parts=`$as_echo ${src_parts} | sed -e 's/^p\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
+ src_pad=`AS_ECHO([${src_parts}])| sed -e 's/^p\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
+ src_parts=`AS_ECHO([${src_parts}])| sed -e 's/^p\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
# get the source "order" - i.e., byte order and leftmost (first)
# pixel significance:
- src_order=`$as_echo ${src_parts} | sed -e 's/^o\([[ml]]\)\(.*\)$/\1/'`
- src_parts=`$as_echo ${src_parts} | sed -e 's/^o\([[ml]]\)\(.*\)$/\2/'`
+ src_order=`AS_ECHO([${src_parts}])| sed -e 's/^o\([[ml]]\)\(.*\)$/\1/'`
+ src_parts=`AS_ECHO([${src_parts}])| sed -e 's/^o\([[ml]]\)\(.*\)$/\2/'`
# get the optional source "class" - monochrome or color:
- src_class=`$as_echo ${src_parts} | sed -e 's/^c\([[mc]]\)\(.*\)$/\1/'`
+ src_class=`AS_ECHO([${src_parts}])| sed -e 's/^c\([[mc]]\)\(.*\)$/\1/'`
if test "x${src_class}" = "x${src_parts}"; then src_class= ; fi
- src_parts=`$as_echo ${src_parts} | sed -e 's/^c\([[mc]]\)\(.*\)$/\2/'`
+ src_parts=`AS_ECHO([${src_parts}])| sed -e 's/^c\([[mc]]\)\(.*\)$/\2/'`
# get the optional source pixel mapping - linear or indexed, and
# the optional number of bits in the map range:
- src_map=`$as_echo ${src_parts} | sed -e 's/^m\([[li]]\)\([[0-9]]*\)\(.*\)$/\1/'`
- src_map_bits=`$as_echo ${src_parts} | sed -e 's/^m\([[li]]\)\([[0-9]]*\)\(.*\)$/\2/'`
+ src_map=`AS_ECHO([${src_parts}])| sed -e 's/^m\([[li]]\)\([[0-9]]*\)\(.*\)$/\1/'`
+ src_map_bits=`AS_ECHO([${src_parts}])| sed -e 's/^m\([[li]]\)\([[0-9]]*\)\(.*\)$/\2/'`
if test "x${src_map}" = "x${src_parts}"; then src_map= ; src_map_bits= ; fi
- src_parts=`$as_echo ${src_parts} | sed -e 's/^m\([[li]]\)\([[0-9]]*\)\(.*\)$/\3/'`
+ src_parts=`AS_ECHO([${src_parts}])| sed -e 's/^m\([[li]]\)\([[0-9]]*\)\(.*\)$/\3/'`
# get the optional source pixel subfield masks:
src_mask_g= ; src_mask_r= ; src_mask_b=
while true; do
- src_mask=`$as_echo ${src_parts} | sed -e 's/^\(_[[rgb]]\)\(0x[[0-9A-Fa-f]][[0-9A-Fa-f]]*\)\(.*\)$/src_mask\1=\2/'`
+ src_mask=`AS_ECHO([${src_parts}])| sed -e 's/^\(_[[rgb]]\)\(0x[[0-9A-Fa-f]][[0-9A-Fa-f]]*\)\(.*\)$/src_mask\1=\2/'`
if test "x${src_mask}" = "x${src_parts}"; then break; fi
eval ${src_mask}
- src_parts=`$as_echo ${src_parts} | sed -e 's/^\(_[[rgb]]\)\(0x[[0-9A-Fa-f]][[0-9A-Fa-f]]*\)\(.*\)$/\3/'`
+ src_parts=`AS_ECHO([${src_parts}])| sed -e 's/^\(_[[rgb]]\)\(0x[[0-9A-Fa-f]][[0-9A-Fa-f]]*\)\(.*\)$/\3/'`
done
# get the source scaling:
@@ -743,38 +743,38 @@ for src_key in ${src_all}; do
dst_parts=${dst_key}
# get the destination depth:
- dst_depth=`$as_echo ${dst_parts} | sed -e 's/^d\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
- dst_parts=`$as_echo ${dst_parts} | sed -e 's/^d\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
+ dst_depth=`AS_ECHO([${dst_parts}])| sed -e 's/^d\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
+ dst_parts=`AS_ECHO([${dst_parts}])| sed -e 's/^d\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
# get the destination bits per pixel:
- dst_bipp=`$as_echo ${dst_parts} | sed -e 's/^b\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
- dst_parts=`$as_echo ${dst_parts} | sed -e 's/^b\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
+ dst_bipp=`AS_ECHO([${dst_parts}])| sed -e 's/^b\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
+ dst_parts=`AS_ECHO([${dst_parts}])| sed -e 's/^b\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
# get the destination skip pixel count:
- dst_skipx=`$as_echo ${dst_parts} | sed -e 's/^s\([[_0-9]][[0-9]]*\)\(.*\)$/\1/'`
- dst_parts=`$as_echo ${dst_parts} | sed -e 's/^s\([[_0-9]][[0-9]]*\)\(.*\)$/\2/'`
+ dst_skipx=`AS_ECHO([${dst_parts}])| sed -e 's/^s\([[_0-9]][[0-9]]*\)\(.*\)$/\1/'`
+ dst_parts=`AS_ECHO([${dst_parts}])| sed -e 's/^s\([[_0-9]][[0-9]]*\)\(.*\)$/\2/'`
# get the destination scanline pad:
- dst_pad=`$as_echo ${dst_parts} | sed -e 's/^p\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
- dst_parts=`$as_echo ${dst_parts} | sed -e 's/^p\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
+ dst_pad=`AS_ECHO([${dst_parts}])| sed -e 's/^p\([[0-9]][[0-9]]*\)\(.*\)$/\1/'`
+ dst_parts=`AS_ECHO([${dst_parts}])| sed -e 's/^p\([[0-9]][[0-9]]*\)\(.*\)$/\2/'`
# get the destination "order" - i.e., byte order and leftmost
# (first) pixel significance:
- dst_order=`$as_echo ${dst_parts} | sed -e 's/^o\([[ml]]\)\(.*\)$/\1/'`
- dst_parts=`$as_echo ${dst_parts} | sed -e 's/^o\([[ml]]\)\(.*\)$/\2/'`
+ dst_order=`AS_ECHO([${dst_parts}])| sed -e 's/^o\([[ml]]\)\(.*\)$/\1/'`
+ dst_parts=`AS_ECHO([${dst_parts}])| sed -e 's/^o\([[ml]]\)\(.*\)$/\2/'`
# get the optional destination pixel mapping - linear or indexed:
- dst_map=`$as_echo ${dst_parts} | sed -e 's/^m\([[li]]\)\(.*\)$/\1/'`
+ dst_map=`AS_ECHO([${dst_parts}])| sed -e 's/^m\([[li]]\)\(.*\)$/\1/'`
if test "x${dst_map}" = "x${dst_parts}"; then dst_map= ; fi
- dst_parts=`$as_echo ${dst_parts} | sed -e 's/^m\([[li]]\)\(.*\)$/\2/'`
+ dst_parts=`AS_ECHO([${dst_parts}])| sed -e 's/^m\([[li]]\)\(.*\)$/\2/'`
# get the optional destination pixel subfield masks:
dst_mask_g= ; dst_mask_r= ; dst_mask_b=
while true; do
- dst_mask=`$as_echo ${dst_parts} | sed -e 's/^\(_[[rgb]]\)\(0x[[0-9A-Fa-f]][[0-9A-Fa-f]]*\)\(.*\)$/dst_mask\1=\2/'`
+ dst_mask=`AS_ECHO([${dst_parts}])| sed -e 's/^\(_[[rgb]]\)\(0x[[0-9A-Fa-f]][[0-9A-Fa-f]]*\)\(.*\)$/dst_mask\1=\2/'`
if test "x${dst_mask}" = "x${dst_parts}"; then break; fi
eval ${dst_mask}
- dst_parts=`$as_echo ${dst_parts} | sed -e 's/^\(_[[rgb]]\)\(0x[[0-9A-Fa-f]][[0-9A-Fa-f]]*\)\(.*\)$/\3/'`
+ dst_parts=`AS_ECHO([${dst_parts}])| sed -e 's/^\(_[[rgb]]\)\(0x[[0-9A-Fa-f]][[0-9A-Fa-f]]*\)\(.*\)$/\3/'`
done
# allocate the xlat number:
@@ -783,119 +783,119 @@ for src_key in ${src_all}; do
xlat_info="tme_fb_xlat${xlat}"
# start the function:
- $as_echo ""
- $as_echo "/* this translates frame buffer contents from this source format:"
+ AS_ECHO([""])
+ AS_ECHO(["/* this translates frame buffer contents from this source format:"])
case "${width}x${height}" in
- 0x0) $as_echo_n " any dimensions" ;;
- *x0) $as_echo_n " width $width, any height" ;;
- 0x*) $as_echo_n " any width, height ${height}" ;;
- *) $as_echo_n " ${width}x${height}" ;;
+ 0x0) AS_ECHO_N([" any dimensions"]) ;;
+ *x0) AS_ECHO_N([" width $width, any height"]) ;;
+ 0x*) AS_ECHO_N([" any width, height ${height}"]) ;;
+ *) AS_ECHO_N([" ${width}x${height}"]) ;;
esac
xlat_info="${xlat_info}, ${width}, ${height}"
case ${scale} in
- _h_) $as_echo " (image will be halved)" ; value="HALF" ;;
- _d_) $as_echo " (image will be doubled)" ; value="DOUBLE" ;;
- *) $as_echo "" ; value="NONE" ;;
+ _h_) AS_ECHO([" (image will be halved)" ; value="HALF"]) ;;
+ _d_) AS_ECHO([" (image will be doubled)" ; value="DOUBLE"]) ;;
+ *) AS_ECHO(["" ; value="NONE"]) ;;
esac
xlat_info="${xlat_info}, TME_FB_XLAT_SCALE_${value}"
- $as_echo_n " "
+ AS_ECHO_N([" "])
case ${src_depth} in
- 0) $as_echo_n "any depth" ;;
- 1) $as_echo_n "1 bit deep" ;;
- *) $as_echo_n "${src_depth} bits deep" ;;
+ 0) AS_ECHO_N(["any depth"]) ;;
+ 1) AS_ECHO_N(["1 bit deep"]) ;;
+ *) AS_ECHO_N(["${src_depth} bits deep"]) ;;
esac
xlat_info="${xlat_info}, ${src_depth}"
case ${src_bipp} in
- 0) $as_echo_n ", any bits per pixel" ;;
- 1) $as_echo_n ", 1 bit per pixel" ;;
- *) $as_echo_n ", ${src_bipp} bits per pixel" ;;
+ 0) AS_ECHO_N([", any bits per pixel"]) ;;
+ 1) AS_ECHO_N([", 1 bit per pixel"]) ;;
+ *) AS_ECHO_N([", ${src_bipp} bits per pixel"]) ;;
esac
xlat_info="${xlat_info}, ${src_bipp}"
case ${src_skipx} in
- _) $as_echo_n ", any number of pixels skipped" ; value="-1";;
- *) $as_echo_n ", ${src_skipx} pixels skipped" ; value=${src_skipx} ;;
+ _) AS_ECHO_N([", any number of pixels skipped" ; value="-1"]);;
+ *) AS_ECHO_N([", ${src_skipx} pixels skipped"]) ; value=${src_skipx} ;;
esac
xlat_info="${xlat_info}, ${value}"
case ${src_pad} in
- 0) $as_echo_n ", any scanline padding" ;;
- *) $as_echo_n ", ${src_pad}-bit scanline padding" ;;
+ 0) AS_ECHO_N([", any scanline padding"]) ;;
+ *) AS_ECHO_N([", ${src_pad}-bit scanline padding"]) ;;
esac
xlat_info="${xlat_info}, ${src_pad}"
case ${src_order} in
- m) $as_echo_n ", MSB-first" ; value="BIG" ;;
- l) $as_echo_n ", LSB-first" ; value="LITTLE" ;;
+ m) AS_ECHO_N([", MSB-first" ; value="BIG"]) ;;
+ l) AS_ECHO_N([", LSB-first" ; value="LITTLE"]) ;;
esac
xlat_info="${xlat_info}, TME_ENDIAN_${value}"
case "x${src_class}" in
- xm) $as_echo_n ", monochrome" ; value="MONOCHROME" ;;
- xc) $as_echo_n ", color" ; value="COLOR" ;;
- *) $as_echo_n ", either color or monochrome" ; value="ANY" ;;
+ xm) AS_ECHO_N([", monochrome" ; value="MONOCHROME"]) ;;
+ xc) AS_ECHO_N([", color" ; value="COLOR"]) ;;
+ *) AS_ECHO_N([", either color or monochrome" ; value="ANY"]) ;;
esac
xlat_info="${xlat_info}, TME_FB_XLAT_CLASS_${value}"
case "x${src_map}" in
- xl) $as_echo_n ", linearly mapped pixels" ; value="LINEAR" ;;
- xi) $as_echo_n ", index mapped pixels" ; value="INDEX" ;;
- *) $as_echo_n ", any pixel mapping" ; value="ANY" ;;
+ xl) AS_ECHO_N([", linearly mapped pixels" ; value="LINEAR"]) ;;
+ xi) AS_ECHO_N([", index mapped pixels" ; value="INDEX"]) ;;
+ *) AS_ECHO_N([", any pixel mapping" ; value="ANY"]) ;;
esac
xlat_info="${xlat_info}, TME_FB_XLAT_MAP_${value}"
value=${src_map_bits}
case "${src_map_bits}" in
- 0) $as_echo_n ", any bits per mapped intensity" ;;
- 1) $as_echo_n ", 1 bit per mapped intensity" ;;
- *) $as_echo_n ", ${src_map_bits} bits per mapped intensity" ;;
+ 0) AS_ECHO_N([", any bits per mapped intensity"]) ;;
+ 1) AS_ECHO_N([", 1 bit per mapped intensity"]) ;;
+ *) AS_ECHO_N([", ${src_map_bits} bits per mapped intensity"]) ;;
esac
xlat_info="${xlat_info}, ${value}"
for primary in g r b; do
eval "src_mask=\$src_mask_${primary}"
case "x${src_mask}" in
- x) $as_echo_n ", no ${primary} mask" ; value=0 ;;
- x0x0) $as_echo_n ", any ${primary} mask" ; value=TME_FB_XLAT_MASK_ANY ;;
- *) $as_echo_n ", a ${primary} mask of ${src_mask}" ; value=${src_mask} ;;
+ x) AS_ECHO_N([", no ${primary} mask"]) ; value=0 ;;
+ x0x0) AS_ECHO_N([", any ${primary} mask"]) ; value=TME_FB_XLAT_MASK_ANY ;;
+ *) AS_ECHO_N([", a ${primary} mask of ${src_mask}"]) ; value=${src_mask} ;;
esac
xlat_info="${xlat_info}, ${value}"
done
- $as_echo ""
- $as_echo " to this destination format:"
- $as_echo_n " "
+ AS_ECHO([""])
+ AS_ECHO([" to this destination format:"])
+ AS_ECHO_N([" "])
case ${dst_depth} in
- 0) $as_echo_n "any depth" ;;
- 1) $as_echo_n "1 bit deep" ;;
- *) $as_echo_n "${dst_depth} bits deep" ;;
+ 0) AS_ECHO_N(["any depth"]) ;;
+ 1) AS_ECHO_N(["1 bit deep"]) ;;
+ *) AS_ECHO_N(["${dst_depth} bits deep"]) ;;
esac
xlat_info="${xlat_info}, ${dst_depth}"
case ${dst_bipp} in
- 0) $as_echo_n ", any bits per pixel" ;;
- 1) $as_echo_n ", 1 bit per pixel" ;;
- *) $as_echo_n ", ${dst_bipp} bits per pixel" ;;
+ 0) AS_ECHO_N([", any bits per pixel"]) ;;
+ 1) AS_ECHO_N([", 1 bit per pixel"]) ;;
+ *) AS_ECHO_N([", ${dst_bipp} bits per pixel"]) ;;
esac
xlat_info="${xlat_info}, ${dst_bipp}"
case ${dst_skipx} in
- _) $as_echo_n ", any number of pixels skipped" ; value="-1";;
- *) $as_echo_n ", ${dst_skipx} pixels skipped" ; value=${dst_skipx} ;;
+ _) AS_ECHO_N([", any number of pixels skipped" ; value="-1"]);;
+ *) AS_ECHO_N([", ${dst_skipx} pixels skipped"]) ; value=${dst_skipx} ;;
esac
xlat_info="${xlat_info}, ${value}"
case ${dst_pad} in
- 0) $as_echo_n ", any scanline padding" ;;
- *) $as_echo_n ", ${dst_pad}-bit scanline padding" ;;
+ 0) AS_ECHO_N([", any scanline padding"]) ;;
+ *) AS_ECHO_N([", ${dst_pad}-bit scanline padding"]) ;;
esac
xlat_info="${xlat_info}, ${dst_pad}"
case ${dst_order} in
- m) $as_echo_n ", MSB-first" ; value="BIG" ;;
- l) $as_echo_n ", LSB-first" ; value="LITTLE" ;;
+ m) AS_ECHO_N([", MSB-first" ; value="BIG"]) ;;
+ l) AS_ECHO_N([", LSB-first" ; value="LITTLE"]) ;;
esac
xlat_info="${xlat_info}, TME_ENDIAN_${value}"
case "x${dst_map}" in
- xl) $as_echo_n ", linearly mapped pixels" ; value="LINEAR" ;;
- xi) $as_echo_n ", index mapped pixels" ; value="INDEX" ;;
- *) $as_echo_n ", any pixel mapping" ; value="ANY" ;;
+ xl) AS_ECHO_N([", linearly mapped pixels" ; value="LINEAR"]) ;;
+ xi) AS_ECHO_N([", index mapped pixels" ; value="INDEX"]) ;;
+ *) AS_ECHO_N([", any pixel mapping" ; value="ANY"]) ;;
esac
xlat_info="${xlat_info}, TME_FB_XLAT_MAP_${value}"
for primary in g r b; do
eval "dst_mask=\$dst_mask_${primary}"
case "x${dst_mask}" in
- x) $as_echo_n ", no ${primary} mask" ; value=0 ;;
- x0x0) $as_echo_n ", any ${primary} mask" ; value=TME_FB_XLAT_MASK_ANY ;;
- *) $as_echo_n ", a ${primary} mask of ${dst_mask}" ; value=${dst_mask} ;;
+ x) AS_ECHO_N([", no ${primary} mask"]) ; value=0 ;;
+ x0x0) AS_ECHO_N([", any ${primary} mask"]) ; value=TME_FB_XLAT_MASK_ANY ;;
+ *) AS_ECHO_N([", a ${primary} mask of ${dst_mask}"]) ; value=${dst_mask} ;;
esac
xlat_info="${xlat_info}, ${value}"
done
@@ -904,31 +904,31 @@ for src_key in ${src_all}; do
xlat_array="${xlat_array}
{ $xlat_info }, "
IFS=$save_IFS
- $as_echo ""
- $as_echo "*/"
- $as_echo "static int"
- $as_echo "tme_fb_xlat${xlat}(struct tme_fb_connection *src,"
- $as_echo " struct tme_fb_connection *dst)"
- $as_echo "{"
+ AS_ECHO([""])
+ AS_ECHO(["*/"])
+ AS_ECHO(["static int"])
+ AS_ECHO(["tme_fb_xlat${xlat}(struct tme_fb_connection *src,"])
+ AS_ECHO([" struct tme_fb_connection *dst)"])
+ AS_ECHO(["{"])
undef_macros=
- $as_echo ""
- $as_echo " /* whenever possible we define macros instead of declaring"
- $as_echo " variables, for optimization: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* whenever possible we define macros instead of declaring"])
+ AS_ECHO([" variables, for optimization: */"])
- $as_echo ""
- $as_echo " /* declare src_x and src_y. these are the current translation"
- $as_echo " coordinates in the source image: */"
- $as_echo " unsigned int src_x, src_y;"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_x and src_y. these are the current translation"])
+ AS_ECHO([" coordinates in the source image: */"])
+ AS_ECHO([" unsigned int src_x, src_y;"])
- $as_echo ""
- $as_echo " /* declare dst_x and dst_y. these are the current translation"
- $as_echo " coordinates in the destination image. since this function"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare dst_x and dst_y. these are the current translation"])
+ AS_ECHO([" coordinates in the destination image. since this function"])
if test $scale = _; then
- $as_echo " does not scale the image, these coordinates are always"
- $as_echo " the same as the coordinates in the source image: */"
- $as_echo "#define dst_x (src_x)"
- $as_echo "#define dst_y (src_y)"
+ AS_ECHO([" does not scale the image, these coordinates are always"])
+ AS_ECHO([" the same as the coordinates in the source image: */"])
+ AS_ECHO(["#define dst_x (src_x)"])
+ AS_ECHO(["#define dst_y (src_y)"])
undef_macros="${undef_macros} dst_x dst_y"
scale_op=
scale_math=
@@ -941,44 +941,44 @@ for src_key in ${src_all}; do
scale_name='doubles'
fi
scale_math=" ${scale_op} 2"
- $as_echo " ${scale_name} the image, the coordinates in the destination image"
- $as_echo " are always the coordinates in the source image${scale_math}: */"
- $as_echo " unsigned int dst_x, dst_y;"
+ AS_ECHO([" ${scale_name} the image, the coordinates in the destination image"])
+ AS_ECHO([" are always the coordinates in the source image${scale_math}: */"])
+ AS_ECHO([" unsigned int dst_x, dst_y;"])
fi
- $as_echo ""
- $as_echo " /* declare pixel. this holds a single pixel value being translated"
- $as_echo " for the destination image: */"
- $as_echo " tme_uint32_t pixel;"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare pixel. this holds a single pixel value being translated"])
+ AS_ECHO([" for the destination image: */"])
+ AS_ECHO([" tme_uint32_t pixel;"])
- $as_echo ""
- $as_echo " /* declare src_width and dst_width. these are in terms of pixels: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_width and dst_width. these are in terms of pixels: */"])
value="(src_width${scale_math})"
if test ${width} = 0; then
- $as_echo " const unsigned int src_width = src->tme_fb_connection_width;"
+ AS_ECHO([" const unsigned int src_width = src->tme_fb_connection_width;"])
if test $scale != _; then
- $as_echo " const unsigned int dst_width = ${value};"
+ AS_ECHO([" const unsigned int dst_width = ${value};"])
else
- $as_echo "#define dst_width ${value}"
+ AS_ECHO(["#define dst_width ${value}"])
undef_macros="${undef_macros} dst_width"
fi
else
- $as_echo "#define src_width (${width})"
- $as_echo "#define dst_width ${value}"
+ AS_ECHO(["#define src_width (${width})"])
+ AS_ECHO(["#define dst_width ${value}"])
undef_macros="${undef_macros} src_width dst_width"
fi
- $as_echo ""
- $as_echo " /* declare src_depth, the source pixel depth, which is in"
- $as_echo " terms of bits. declare src_mask, which is the corresponding"
- $as_echo " mask of one bits: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_depth, the source pixel depth, which is in"])
+ AS_ECHO([" terms of bits. declare src_mask, which is the corresponding"])
+ AS_ECHO([" mask of one bits: */"])
value="(0xffffffff >> (32 - src_depth))"
if test ${src_depth} = 0; then
- $as_echo " const unsigned int src_depth = src->tme_fb_connection_depth;"
- $as_echo " const tme_uint32_t src_mask = ${value};"
+ AS_ECHO([" const unsigned int src_depth = src->tme_fb_connection_depth;"])
+ AS_ECHO([" const tme_uint32_t src_mask = ${value};"])
else
- $as_echo "#define src_depth (${src_depth})"
- $as_echo "#define src_mask ${value}"
+ AS_ECHO(["#define src_depth (${src_depth})"])
+ AS_ECHO(["#define src_mask ${value}"])
undef_macros="${undef_macros} src_depth src_mask"
fi
@@ -987,199 +987,199 @@ for src_key in ${src_all}; do
#
if test ${scale} = _h_ || test "x${src_mask_g}" != x; then
- $as_echo ""
- $as_echo " /* declare src_indexed. this is nonzero if source pixel subfields"
- $as_echo " are index-mapped into intensities: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_indexed. this is nonzero if source pixel subfields"])
+ AS_ECHO([" are index-mapped into intensities: */"])
if test "x${src_map}" = x; then
- $as_echo " const unsigned int src_indexed = (src->tme_fb_connection_map_g != NULL);"
+ AS_ECHO([" const unsigned int src_indexed = (src->tme_fb_connection_map_g != NULL);"])
else
if test "x${src_map}" = xi; then value=TRUE; else value=FALSE; fi
- $as_echo "#define src_indexed (${value})"
+ AS_ECHO(["#define src_indexed (${value})"])
undef_macros="${undef_macros} src_indexed"
fi
- $as_echo ""
- $as_echo " /* declare src_mask_i, which is the mask for a source intensity: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_mask_i, which is the mask for a source intensity: */"])
if test "${src_map_bits}" = 0; then
- $as_echo " const tme_uint32_t src_mask_i = (0xffffffff >> (32 - src->tme_fb_connection_map_bits));"
+ AS_ECHO([" const tme_uint32_t src_mask_i = (0xffffffff >> (32 - src->tme_fb_connection_map_bits));"])
else
- $as_echo "#define src_mask_i (0xffffffff >> (32 - ${src_map_bits}))"
+ AS_ECHO(["#define src_mask_i (0xffffffff >> (32 - ${src_map_bits}))"])
undef_macros="${undef_macros} src_mask_i"
fi
if test "x${src_class}" != xm; then
- $as_echo ""
- $as_echo " /* declare dst_indexed. this is nonzero if intensities are index-mapped"
- $as_echo " into destination pixel subfields: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare dst_indexed. this is nonzero if intensities are index-mapped"])
+ AS_ECHO([" into destination pixel subfields: */"])
if test "x${dst_map}" = x; then
- $as_echo " const unsigned int dst_indexed = (dst->tme_fb_connection_map_g != NULL);"
+ AS_ECHO([" const unsigned int dst_indexed = (dst->tme_fb_connection_map_g != NULL);"])
else
if test "x${dst_map}" = xi; then value=TRUE; else value=FALSE; fi
- $as_echo "#define dst_indexed (${value})"
+ AS_ECHO(["#define dst_indexed (${value})"])
undef_macros="${undef_macros} dst_indexed"
fi
- $as_echo ""
- $as_echo " /* declare dst_masks_default. this is nonzero if the destination"
- $as_echo " subfield masks are the default: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare dst_masks_default. this is nonzero if the destination"])
+ AS_ECHO([" subfield masks are the default: */"])
if test "x${dst_mask_g}" = "x0x0"; then
- $as_echo " const unsigned int dst_masks_default = (dst->tme_fb_connection_mask_g == 0);"
+ AS_ECHO([" const unsigned int dst_masks_default = (dst->tme_fb_connection_mask_g == 0);"])
else
if test "x${dst_mask_g}" = x; then value=TRUE; else value=FALSE; fi
- $as_echo "#define dst_masks_default (${value})"
+ AS_ECHO(["#define dst_masks_default (${value})"])
undef_macros="${undef_macros} dst_masks_default"
fi
fi
for primary in g r b; do
- primary_cap=`$as_echo ${primary} | tr a-z A-Z`
- $as_echo ""
- $as_echo " /* declare src_mask_${primary}, the mask for the ${primary} subfield in a source pixel: */"
+ primary_cap=`AS_ECHO([${primary}])| tr a-z A-Z`
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_mask_${primary}, the mask for the ${primary} subfield in a source pixel: */"])
eval "src_mask=\$src_mask_${primary}"
if test "x${src_mask}" = x0x0; then
- $as_echo " const tme_uint32_t src_mask_${primary}"
- $as_echo " = (src->tme_fb_connection_mask_${primary} != 0"
- $as_echo " ? src->tme_fb_connection_mask_${primary}"
- $as_echo " : src_mask);"
+ AS_ECHO([" const tme_uint32_t src_mask_${primary}"])
+ AS_ECHO([" = (src->tme_fb_connection_mask_${primary} != 0"])
+ AS_ECHO([" ? src->tme_fb_connection_mask_${primary}"])
+ AS_ECHO([" : src_mask);"])
else
if test "x${src_mask}" = x; then src_mask="src_mask"; fi
- $as_echo "#define src_mask_${primary} (${src_mask})"
+ AS_ECHO(["#define src_mask_${primary} (${src_mask})"])
undef_macros="${undef_macros} src_mask_${primary}"
fi
- $as_echo ""
- $as_echo " /* declare value_${primary}, the intensity value for the ${primary} subfield in a pixel: */"
- $as_echo " tme_uint32_t value_${primary};"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare value_${primary}, the intensity value for the ${primary} subfield in a pixel: */"])
+ AS_ECHO([" tme_uint32_t value_${primary};"])
if test "x${src_class}" = xm; then break; fi
- $as_echo ""
- $as_echo " /* declare dst_mask_${primary}, the mask for the ${primary} subfield in a destination pixel: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare dst_mask_${primary}, the mask for the ${primary} subfield in a destination pixel: */"])
eval "dst_mask=\$dst_mask_${primary}"
if test "x${dst_mask}" = x0x0; then
- $as_echo " const tme_uint32_t dst_mask_${primary}"
- $as_echo " = (dst->tme_fb_connection_mask_${primary} != 0"
- $as_echo " ? dst->tme_fb_connection_mask_${primary}"
- $as_echo " : TME_FB_XLAT_MASK_DEFAULT_${primary_cap});"
+ AS_ECHO([" const tme_uint32_t dst_mask_${primary}"])
+ AS_ECHO([" = (dst->tme_fb_connection_mask_${primary} != 0"])
+ AS_ECHO([" ? dst->tme_fb_connection_mask_${primary}"])
+ AS_ECHO([" : TME_FB_XLAT_MASK_DEFAULT_${primary_cap});"])
else
if test "x${dst_mask}" = x; then dst_mask="TME_FB_XLAT_MASK_DEFAULT_${primary_cap}"; fi
- $as_echo "#define dst_mask_${primary} (${dst_mask})"
+ AS_ECHO(["#define dst_mask_${primary} (${dst_mask})"])
undef_macros="${undef_macros} dst_mask_${primary}"
fi
done
fi
- $as_echo ""
- $as_echo " /* declare src_bipp and dst_bipp. these are the bits-per-pixel"
- $as_echo " values for the source and destination images: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_bipp and dst_bipp. these are the bits-per-pixel"])
+ AS_ECHO([" values for the source and destination images: */"])
if test ${src_bipp} = 0; then
- $as_echo " const unsigned int src_bipp = src->tme_fb_connection_bits_per_pixel;"
+ AS_ECHO([" const unsigned int src_bipp = src->tme_fb_connection_bits_per_pixel;"])
else
- $as_echo "#define src_bipp (${src_bipp})"
+ AS_ECHO(["#define src_bipp (${src_bipp})"])
undef_macros="${undef_macros} src_bipp"
fi
if test ${dst_bipp} = 0; then
- $as_echo " const unsigned int dst_bipp = dst->tme_fb_connection_bits_per_pixel;"
+ AS_ECHO([" const unsigned int dst_bipp = dst->tme_fb_connection_bits_per_pixel;"])
else
- $as_echo "#define dst_bipp (${dst_bipp})"
+ AS_ECHO(["#define dst_bipp (${dst_bipp})"])
undef_macros="${undef_macros} dst_bipp"
fi
- $as_echo ""
- $as_echo " /* declare src_skipx and dst_skipx. these are the counts of"
- $as_echo " undisplayed pixels at the beginning of each scanline in the"
- $as_echo " source and destination images: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_skipx and dst_skipx. these are the counts of"])
+ AS_ECHO([" undisplayed pixels at the beginning of each scanline in the"])
+ AS_ECHO([" source and destination images: */"])
if test ${src_skipx} = _; then
- $as_echo " const unsigned int src_skipx = src->tme_fb_connection_skipx;"
+ AS_ECHO([" const unsigned int src_skipx = src->tme_fb_connection_skipx;"])
else
- $as_echo "#define src_skipx (${src_skipx})"
+ AS_ECHO(["#define src_skipx (${src_skipx})"])
undef_macros="${undef_macros} src_skipx"
fi
if test ${dst_skipx} = _; then
- $as_echo " const unsigned int dst_skipx = dst->tme_fb_connection_skipx;"
+ AS_ECHO([" const unsigned int dst_skipx = dst->tme_fb_connection_skipx;"])
else
- $as_echo "#define dst_skipx (${dst_skipx})"
+ AS_ECHO(["#define dst_skipx (${dst_skipx})"])
undef_macros="${undef_macros} dst_skipx"
fi
- $as_echo ""
- $as_echo " /* declare src_pad and dst_pad. these are the paddings, in bits,"
- $as_echo " of each scanline in the source and destination images: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_pad and dst_pad. these are the paddings, in bits,"])
+ AS_ECHO([" of each scanline in the source and destination images: */"])
if test ${src_pad} = 0; then
- $as_echo " const unsigned int src_pad = src->tme_fb_connection_scanline_pad;"
+ AS_ECHO([" const unsigned int src_pad = src->tme_fb_connection_scanline_pad;"])
else
- $as_echo "#define src_pad (${src_pad})"
+ AS_ECHO(["#define src_pad (${src_pad})"])
undef_macros="${undef_macros} src_pad"
fi
if test ${dst_pad} = 0; then
- $as_echo " const unsigned int dst_pad = dst->tme_fb_connection_scanline_pad;"
+ AS_ECHO([" const unsigned int dst_pad = dst->tme_fb_connection_scanline_pad;"])
else
- $as_echo "#define dst_pad (${dst_pad})"
+ AS_ECHO(["#define dst_pad (${dst_pad})"])
undef_macros="${undef_macros} dst_pad"
fi
- $as_echo ""
- $as_echo " /* declare src_order and dst_order. these are the bit and byte"
- $as_echo " orders (either TME_ENDIAN_BIG or TME_ENDIAN_LITTLE) of the"
- $as_echo " source and destination images. since these values profoundly"
- $as_echo " affect optimization, they are always constant: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_order and dst_order. these are the bit and byte"])
+ AS_ECHO([" orders (either TME_ENDIAN_BIG or TME_ENDIAN_LITTLE) of the"])
+ AS_ECHO([" source and destination images. since these values profoundly"])
+ AS_ECHO([" affect optimization, they are always constant: */"])
if test ${src_order} = m; then value=BIG; else value=LITTLE; fi
- $as_echo "#define src_order (TME_ENDIAN_${value})"
+ AS_ECHO(["#define src_order (TME_ENDIAN_${value})"])
undef_macros="${undef_macros} src_order"
if test ${dst_order} = m; then value=BIG; else value=LITTLE; fi
- $as_echo "#define dst_order (TME_ENDIAN_${value})"
+ AS_ECHO(["#define dst_order (TME_ENDIAN_${value})"])
undef_macros="${undef_macros} dst_order"
- $as_echo ""
- $as_echo " /* declare src_bypl and dst_bypl. these are the bytes per scanline"
- $as_echo " in the source and destination images. these values are calculated"
- $as_echo " from the count of undisplayed and displayed pixels per scanline,"
- $as_echo " the number of bits per pixel, and the scanline padding: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_bypl and dst_bypl. these are the bytes per scanline"])
+ AS_ECHO([" in the source and destination images. these values are calculated"])
+ AS_ECHO([" from the count of undisplayed and displayed pixels per scanline,"])
+ AS_ECHO([" the number of bits per pixel, and the scanline padding: */"])
value="(((((src_skipx + src_width) * src_bipp) + (src_pad - 1)) & -src_pad) / 8)"
if test ${src_skipx} = _ || test ${width} = 0 || test ${src_bipp} = 0 || test ${src_pad} = 0; then
- $as_echo " const unsigned int src_bypl = ${value};"
+ AS_ECHO([" const unsigned int src_bypl = ${value};"])
src_bypl_var=true
else
- $as_echo "#define src_bypl ${value}"
+ AS_ECHO(["#define src_bypl ${value}"])
undef_macros="${undef_macros} src_bypl"
src_bypl_var=false
fi
value="(((((dst_skipx + dst_width) * dst_bipp) + (dst_pad - 1)) & -dst_pad) / 8)"
if test ${dst_skipx} = _ || test ${width} = 0 || test ${dst_bipp} = 0 || test ${dst_pad} = 0; then
- $as_echo " const unsigned int dst_bypl = ${value};"
+ AS_ECHO([" const unsigned int dst_bypl = ${value};"])
dst_bypl_var=true
else
- $as_echo "#define dst_bypl ${value}"
+ AS_ECHO(["#define dst_bypl ${value}"])
undef_macros="${undef_macros} dst_bypl"
dst_bypl_var=false
fi
- $as_echo ""
- $as_echo " /* declare src_packed and dst_packed. these are nonzero iff"
- $as_echo " every last bit in a scanline belongs to a displayed pixel."
- $as_echo " put another way, this is zero iff a scanline has undisplayed"
- $as_echo " pixels at its beginning or padding bits at its end. when"
- $as_echo " a source image or destination image is packed, translation"
- $as_echo " doesn't have to worry about skipping FIFO bits to get to"
- $as_echo " bits belonging to displayed pixels: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_packed and dst_packed. these are nonzero iff"])
+ AS_ECHO([" every last bit in a scanline belongs to a displayed pixel."])
+ AS_ECHO([" put another way, this is zero iff a scanline has undisplayed"])
+ AS_ECHO([" pixels at its beginning or padding bits at its end. when"])
+ AS_ECHO([" a source image or destination image is packed, translation"])
+ AS_ECHO([" doesn't have to worry about skipping FIFO bits to get to"])
+ AS_ECHO([" bits belonging to displayed pixels: */"])
value="((src_width * src_bipp) == (src_bypl * 8))"
if $src_bypl_var; then
- $as_echo " const unsigned int src_packed = ${value};"
+ AS_ECHO([" const unsigned int src_packed = ${value};"])
else
- $as_echo "#define src_packed ${value}"
+ AS_ECHO(["#define src_packed ${value}"])
undef_macros="${undef_macros} src_packed"
fi
value="((dst_width * dst_bipp) == (dst_bypl * 8))"
if $dst_bypl_var; then
- $as_echo " const unsigned int dst_packed = ${value};"
+ AS_ECHO([" const unsigned int dst_packed = ${value};"])
else
- $as_echo "#define dst_packed ${value}"
+ AS_ECHO(["#define dst_packed ${value}"])
undef_macros="${undef_macros} dst_packed"
fi
- $as_echo ""
- $as_echo " /* declare src_bypb and src_bypb_real. src_bypb is the bytes"
- $as_echo " per source image buffer with the \"translation termination"
- $as_echo " overhead\" of approximately two extra scanlines. src_bypb_real"
- $as_echo " is the real bytes per source image buffer with no overhead."
- $as_echo " both values are padded to a multiple of 4 bytes (32 bits): */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_bypb and src_bypb_real. src_bypb is the bytes"])
+ AS_ECHO([" per source image buffer with the \"translation termination"])
+ AS_ECHO([" overhead\" of approximately two extra scanlines. src_bypb_real"])
+ AS_ECHO([" is the real bytes per source image buffer with no overhead."])
+ AS_ECHO([" both values are padded to a multiple of 4 bytes (32 bits): */"])
if test ${height} = 0; then
value="src->tme_fb_connection_height"
else
@@ -1188,98 +1188,98 @@ for src_key in ${src_all}; do
value_real="(((${value} * src_bypl) + 3) & -4)"
value="((src_bypb_real + (src_bypl * 2)) & -4)"
if test ${height} = 0 || $src_bypl_var; then
- $as_echo " const unsigned int src_bypb_real = ${value_real};"
- $as_echo " const unsigned int src_bypb = ${value};"
+ AS_ECHO([" const unsigned int src_bypb_real = ${value_real};"])
+ AS_ECHO([" const unsigned int src_bypb = ${value};"])
else
- $as_echo "#define src_bypb_real ${value_real}"
- $as_echo "#define src_bypb ${value}"
+ AS_ECHO(["#define src_bypb_real ${value_real}"])
+ AS_ECHO(["#define src_bypb ${value}"])
undef_macros="${undef_macros} src_bypb_real src_bypb"
fi
- $as_echo ""
- $as_echo " /* declare the source primary bit FIFO:"
- $as_echo ""
- $as_echo " src_raw0 points to the next aligned 32-bit word to be"
- $as_echo " read from the image buffer."
- $as_echo ""
- $as_echo " src_fifo0 is the visible part of the bit FIFO."
- $as_echo ""
- $as_echo " src_fifo0_next and src_fifo0_bits are only used when the"
- $as_echo " visible part of the bit FIFO is not guaranteed to always"
- $as_echo " correspond to an aligned 32-bit word in the image buffer."
- $as_echo " src_fifo0_next is the invisible part of the bit FIFO,"
- $as_echo " and src_fifo0_bits tracks the total number of bits in the"
- $as_echo " visible and invisible parts of the FIFO. */"
- $as_echo " const tme_uint32_t *src_raw0;"
- $as_echo " tme_uint32_t src_fifo0, src_fifo0_next;"
- $as_echo " unsigned int src_fifo0_bits;"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare the source primary bit FIFO:"])
+ AS_ECHO([""])
+ AS_ECHO([" src_raw0 points to the next aligned 32-bit word to be"])
+ AS_ECHO([" read from the image buffer."])
+ AS_ECHO([""])
+ AS_ECHO([" src_fifo0 is the visible part of the bit FIFO."])
+ AS_ECHO([""])
+ AS_ECHO([" src_fifo0_next and src_fifo0_bits are only used when the"])
+ AS_ECHO([" visible part of the bit FIFO is not guaranteed to always"])
+ AS_ECHO([" correspond to an aligned 32-bit word in the image buffer."])
+ AS_ECHO([" src_fifo0_next is the invisible part of the bit FIFO,"])
+ AS_ECHO([" and src_fifo0_bits tracks the total number of bits in the"])
+ AS_ECHO([" visible and invisible parts of the FIFO. */"])
+ AS_ECHO([" const tme_uint32_t *src_raw0;"])
+ AS_ECHO([" tme_uint32_t src_fifo0, src_fifo0_next;"])
+ AS_ECHO([" unsigned int src_fifo0_bits;"])
if test ${scale} = _h_; then
- $as_echo ""
- $as_echo " /* since this function ${scale_name} the image, declare the"
- $as_echo " source secondary bit FIFO. these variables work in "
- $as_echo " exactly the same way that their primary counterparts do: */"
- $as_echo " const tme_uint32_t *src_raw1;"
- $as_echo " tme_uint32_t src_fifo1, src_fifo1_next;"
- $as_echo " unsigned int src_fifo1_bits;"
+ AS_ECHO([""])
+ AS_ECHO([" /* since this function ${scale_name} the image, declare the"])
+ AS_ECHO([" source secondary bit FIFO. these variables work in "])
+ AS_ECHO([" exactly the same way that their primary counterparts do: */"])
+ AS_ECHO([" const tme_uint32_t *src_raw1;"])
+ AS_ECHO([" tme_uint32_t src_fifo1, src_fifo1_next;"])
+ AS_ECHO([" unsigned int src_fifo1_bits;"])
fi
- $as_echo ""
- $as_echo " /* declare the destination primary bit FIFO:"
- $as_echo ""
- $as_echo " dst_raw0 points to the next aligned 32-bit word to be"
- $as_echo " written into the image buffer."
- $as_echo ""
- $as_echo " dst_fifo0 is the visible part of the bit FIFO."
- $as_echo ""
- $as_echo " dst_fifo0_next and dst_fifo0_bits are only used when the"
- $as_echo " visible part of the bit FIFO is not guaranteed to always"
- $as_echo " correspond to an aligned 32-bit word in the image buffer."
- $as_echo " dst_fifo0_next is the invisible part of the bit FIFO,"
- $as_echo " and dst_fifo0_bits tracks the total number of bits in the"
- $as_echo " invisible part of the FIFO. */"
- $as_echo " tme_uint32_t *dst_raw0;"
- $as_echo " tme_uint32_t dst_fifo0, dst_fifo0_next;"
- $as_echo " unsigned int dst_fifo0_bits;"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare the destination primary bit FIFO:"])
+ AS_ECHO([""])
+ AS_ECHO([" dst_raw0 points to the next aligned 32-bit word to be"])
+ AS_ECHO([" written into the image buffer."])
+ AS_ECHO([""])
+ AS_ECHO([" dst_fifo0 is the visible part of the bit FIFO."])
+ AS_ECHO([""])
+ AS_ECHO([" dst_fifo0_next and dst_fifo0_bits are only used when the"])
+ AS_ECHO([" visible part of the bit FIFO is not guaranteed to always"])
+ AS_ECHO([" correspond to an aligned 32-bit word in the image buffer."])
+ AS_ECHO([" dst_fifo0_next is the invisible part of the bit FIFO,"])
+ AS_ECHO([" and dst_fifo0_bits tracks the total number of bits in the"])
+ AS_ECHO([" invisible part of the FIFO. */"])
+ AS_ECHO([" tme_uint32_t *dst_raw0;"])
+ AS_ECHO([" tme_uint32_t dst_fifo0, dst_fifo0_next;"])
+ AS_ECHO([" unsigned int dst_fifo0_bits;"])
if test ${scale} = _d_; then
- $as_echo ""
- $as_echo " /* since this function ${scale_name} the image, declare"
- $as_echo " the destination secondary bit FIFO. these variables work"
- $as_echo " in exactly the same way that their primary counterparts"
- $as_echo " do: */"
- $as_echo " tme_uint32_t *dst_raw1;"
- $as_echo " tme_uint32_t dst_fifo1, dst_fifo1_next;"
- $as_echo " unsigned int dst_fifo1_bits;"
+ AS_ECHO([""])
+ AS_ECHO([" /* since this function ${scale_name} the image, declare"])
+ AS_ECHO([" the destination secondary bit FIFO. these variables work"])
+ AS_ECHO([" in exactly the same way that their primary counterparts"])
+ AS_ECHO([" do: */"])
+ AS_ECHO([" tme_uint32_t *dst_raw1;"])
+ AS_ECHO([" tme_uint32_t dst_fifo1, dst_fifo1_next;"])
+ AS_ECHO([" unsigned int dst_fifo1_bits;"])
fi
- $as_echo ""
- $as_echo " /* declare src_off and dst_off. these are used when priming a"
- $as_echo " source or destination bit FIFO, to identify an initial aligned"
- $as_echo " 32-bit word in the source or destination image buffer, and an"
- $as_echo " initial bit offset within that word: */"
- $as_echo " unsigned int src_off, dst_off;"
-
- $as_echo ""
- $as_echo " /* declare src_fifo0_may_be_unaligned. this is zero iff all"
- $as_echo " aligned 32-bit words in the source buffer contain a whole"
- $as_echo " number of displayed pixels, and at *all times during the"
- $as_echo " translation* the visible part of the bit FIFO is guaranteed"
- $as_echo " to correspond to an aligned 32-bit word in the image buffer."
- $as_echo ""
- $as_echo " this is *not* so if any of the following are true:"
- $as_echo ""
- $as_echo " - the source bits-per-pixel value is not known at compile"
- $as_echo " time. in this case, we can't unroll the translation loop"
- $as_echo " for source pixels, and are forced to shift the FIFO after"
- $as_echo " each one."
- $as_echo ""
- $as_echo " - if the source image is not packed. in this case, there may"
- $as_echo " be undisplayed pixels in the FIFO, which we will need to"
- $as_echo " shift out."
- $as_echo ""
- $as_echo " - if there are 24 bits per source pixel. in this case, a"
- $as_echo " source pixel may cross a 32-bit boundary: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_off and dst_off. these are used when priming a"])
+ AS_ECHO([" source or destination bit FIFO, to identify an initial aligned"])
+ AS_ECHO([" 32-bit word in the source or destination image buffer, and an"])
+ AS_ECHO([" initial bit offset within that word: */"])
+ AS_ECHO([" unsigned int src_off, dst_off;"])
+
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_fifo0_may_be_unaligned. this is zero iff all"])
+ AS_ECHO([" aligned 32-bit words in the source buffer contain a whole"])
+ AS_ECHO([" number of displayed pixels, and at *all times during the"])
+ AS_ECHO([" translation* the visible part of the bit FIFO is guaranteed"])
+ AS_ECHO([" to correspond to an aligned 32-bit word in the image buffer."])
+ AS_ECHO([""])
+ AS_ECHO([" this is *not* so if any of the following are true:"])
+ AS_ECHO([""])
+ AS_ECHO([" - the source bits-per-pixel value is not known at compile"])
+ AS_ECHO([" time. in this case, we can't unroll the translation loop"])
+ AS_ECHO([" for source pixels, and are forced to shift the FIFO after"])
+ AS_ECHO([" each one."])
+ AS_ECHO([""])
+ AS_ECHO([" - if the source image is not packed. in this case, there may"])
+ AS_ECHO([" be undisplayed pixels in the FIFO, which we will need to"])
+ AS_ECHO([" shift out."])
+ AS_ECHO([""])
+ AS_ECHO([" - if there are 24 bits per source pixel. in this case, a"])
+ AS_ECHO([" source pixel may cross a 32-bit boundary: */"])
src_fifo0_may_be_unaligned_var=false
if test ${src_bipp} = 0; then
value=TRUE
@@ -1288,77 +1288,77 @@ for src_key in ${src_all}; do
src_fifo0_may_be_unaligned_var=${src_bypl_var}
fi
if $src_fifo0_may_be_unaligned_var; then
- $as_echo " const unsigned int src_fifo0_may_be_unaligned = ${value};"
+ AS_ECHO([" const unsigned int src_fifo0_may_be_unaligned = ${value};"])
else
- $as_echo "#define src_fifo0_may_be_unaligned ${value}"
+ AS_ECHO(["#define src_fifo0_may_be_unaligned ${value}"])
undef_macros="${undef_macros} src_fifo0_may_be_unaligned"
fi
if test $scale = _h_; then
- $as_echo ""
- $as_echo " /* declare src_fifo1_may_be_unaligned. this is zero iff all"
- $as_echo " aligned 32-bit words in the source buffer contain a"
- $as_echo " whole number of displayed pixels, *and* for every aligned"
- $as_echo " 32-bit word on one scanline all other scanlines have an"
- $as_echo " aligned 32-bit word corresponding to the same x coordinate: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_fifo1_may_be_unaligned. this is zero iff all"])
+ AS_ECHO([" aligned 32-bit words in the source buffer contain a"])
+ AS_ECHO([" whole number of displayed pixels, *and* for every aligned"])
+ AS_ECHO([" 32-bit word on one scanline all other scanlines have an"])
+ AS_ECHO([" aligned 32-bit word corresponding to the same x coordinate: */"])
value="(src_fifo0_may_be_unaligned || (src_bypl & 3))"
if $src_bypl_var; then
- $as_echo " const unsigned int src_fifo1_may_be_unaligned = ${value};"
+ AS_ECHO([" const unsigned int src_fifo1_may_be_unaligned = ${value};"])
else
- $as_echo "#define src_fifo1_may_be_unaligned ${value}"
+ AS_ECHO(["#define src_fifo1_may_be_unaligned ${value}"])
undef_macros="${undef_macros} src_fifo1_may_be_unaligned"
fi
fi
- $as_echo ""
- $as_echo " /* declare dst_fifo0_may_be_unaligned. this is zero iff all"
- $as_echo " aligned 32-bit words in the destination buffer contain a whole"
- $as_echo " number of displayed pixels, and at *all times during the"
- $as_echo " translation* the visible part of the bit FIFO is guaranteed"
- $as_echo " to correspond to an aligned 32-bit word in the image buffer."
- $as_echo ""
- $as_echo " this is *not* so if any of the following are true:"
- $as_echo ""
- $as_echo " - the destination bits-per-pixel value is not known at compile"
- $as_echo " time. in this case, we can't unroll the translation loop"
- $as_echo " for destination pixels, and are forced to shift the FIFO"
- $as_echo " after each one."
- $as_echo ""
- $as_echo " - if src_fifo0_may_be_unaligned is true. in this case, we"
- $as_echo " definitely can't guarantee that any initial dst_x will"
- $as_echo " correspond to an aligned 32-bit word in the destination buffer."
- $as_echo ""
- $as_echo " - if the destination image is not packed. in this case, there may"
- $as_echo " be undisplayed pixels in the FIFO, which we will need to"
- $as_echo " shift out."
- $as_echo ""
- $as_echo " - if there are 24 bits per destination pixel. in this case,"
- $as_echo " a destination pixel may cross a 32-bit boundary."
- $as_echo ""
- $as_echo " - if a possible initial dst_x doesn't correspond to an aligned"
- $as_echo " 32-bit word in the destination buffer. for this last one:"
- $as_echo ""
- $as_echo " since we require that src_fifo0_may_be_unaligned is zero, we"
- $as_echo " know that the initial src_x = (Z * 32) / src_bipp for "
- $as_echo " some Z. we also have the initial dst_x = src_x${scale_math}."
- $as_echo " the initial destination bit offset will then be:"
- $as_echo ""
- $as_echo " (dst_skipx + dst_x) * dst_bipp"
- $as_echo " = (dst_skipx * dst_bipp) + (dst_x * dst_bipp)"
- $as_echo ""
- $as_echo " if we additionally require that (dst_skipx * dst_bipp)"
- $as_echo " be 32-bit aligned, this reduces things to:"
- $as_echo ""
- $as_echo " dst_x * dst_bipp"
- $as_echo " = (src_x${scale_math}) * dst_bipp"
- $as_echo " = (((Z * 32) / src_bipp)${scale_math}) * dst_bipp"
- $as_echo ""
- $as_echo " which will be a multiple of 32 iff:"
- $as_echo ""
- $as_echo " ((1 / src_bipp)${scale_math}) * dst_bipp >= 1 and integral"
- $as_echo ""
- $as_echo " or, equivalently:"
- $as_echo ""
+ AS_ECHO([""])
+ AS_ECHO([" /* declare dst_fifo0_may_be_unaligned. this is zero iff all"])
+ AS_ECHO([" aligned 32-bit words in the destination buffer contain a whole"])
+ AS_ECHO([" number of displayed pixels, and at *all times during the"])
+ AS_ECHO([" translation* the visible part of the bit FIFO is guaranteed"])
+ AS_ECHO([" to correspond to an aligned 32-bit word in the image buffer."])
+ AS_ECHO([""])
+ AS_ECHO([" this is *not* so if any of the following are true:"])
+ AS_ECHO([""])
+ AS_ECHO([" - the destination bits-per-pixel value is not known at compile"])
+ AS_ECHO([" time. in this case, we can't unroll the translation loop"])
+ AS_ECHO([" for destination pixels, and are forced to shift the FIFO"])
+ AS_ECHO([" after each one."])
+ AS_ECHO([""])
+ AS_ECHO([" - if src_fifo0_may_be_unaligned is true. in this case, we"])
+ AS_ECHO([" definitely can't guarantee that any initial dst_x will"])
+ AS_ECHO([" correspond to an aligned 32-bit word in the destination buffer."])
+ AS_ECHO([""])
+ AS_ECHO([" - if the destination image is not packed. in this case, there may"])
+ AS_ECHO([" be undisplayed pixels in the FIFO, which we will need to"])
+ AS_ECHO([" shift out."])
+ AS_ECHO([""])
+ AS_ECHO([" - if there are 24 bits per destination pixel. in this case,"])
+ AS_ECHO([" a destination pixel may cross a 32-bit boundary."])
+ AS_ECHO([""])
+ AS_ECHO([" - if a possible initial dst_x doesn't correspond to an aligned"])
+ AS_ECHO([" 32-bit word in the destination buffer. for this last one:"])
+ AS_ECHO([""])
+ AS_ECHO([" since we require that src_fifo0_may_be_unaligned is zero, we"])
+ AS_ECHO([" know that the initial src_x = (Z * 32) / src_bipp for "])
+ AS_ECHO([" some Z. we also have the initial dst_x = src_x${scale_math}."])
+ AS_ECHO([" the initial destination bit offset will then be:"])
+ AS_ECHO([""])
+ AS_ECHO([" (dst_skipx + dst_x) * dst_bipp"])
+ AS_ECHO([" = (dst_skipx * dst_bipp) + (dst_x * dst_bipp)"])
+ AS_ECHO([""])
+ AS_ECHO([" if we additionally require that (dst_skipx * dst_bipp)"])
+ AS_ECHO([" be 32-bit aligned, this reduces things to:"])
+ AS_ECHO([""])
+ AS_ECHO([" dst_x * dst_bipp"])
+ AS_ECHO([" = (src_x${scale_math}) * dst_bipp"])
+ AS_ECHO([" = (((Z * 32) / src_bipp)${scale_math}) * dst_bipp"])
+ AS_ECHO([""])
+ AS_ECHO([" which will be a multiple of 32 iff:"])
+ AS_ECHO([""])
+ AS_ECHO([" ((1 / src_bipp)${scale_math}) * dst_bipp >= 1 and integral"])
+ AS_ECHO([""])
+ AS_ECHO([" or, equivalently:"])
+ AS_ECHO([""])
denom="src_bipp"
numer="dst_bipp"
case $scale in
@@ -1366,8 +1366,8 @@ for src_key in ${src_all}; do
_h_) denom="(${denom} * 2)" ;;
_d_) numer="(${numer} * 2)" ;;
esac
- $as_echo " (${numer} % ${denom}) == 0"
- $as_echo " */"
+ AS_ECHO([" (${numer} % ${denom}) == 0"])
+ AS_ECHO([" */"])
dst_fifo0_may_be_unaligned_var=false
if test ${dst_bipp} = 0; then
value=TRUE
@@ -1378,371 +1378,371 @@ for src_key in ${src_all}; do
fi
fi
if $dst_fifo0_may_be_unaligned_var; then
- $as_echo " const unsigned int dst_fifo0_may_be_unaligned = ${value};"
+ AS_ECHO([" const unsigned int dst_fifo0_may_be_unaligned = ${value};"])
else
- $as_echo "#define dst_fifo0_may_be_unaligned ${value}"
+ AS_ECHO(["#define dst_fifo0_may_be_unaligned ${value}"])
undef_macros="${undef_macros} dst_fifo0_may_be_unaligned"
fi
if test $scale = _d_; then
- $as_echo ""
- $as_echo " /* declare dst_fifo1_may_be_unaligned. this is zero iff all"
- $as_echo " 32-bit aligned values in the destination buffer contain a"
- $as_echo " whole number of displayed pixels, and for every 32-bit"
- $as_echo " aligned value on one scanline all other scanlines have a"
- $as_echo " 32-bit aligned value corresponding to the same x coordinate: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare dst_fifo1_may_be_unaligned. this is zero iff all"])
+ AS_ECHO([" 32-bit aligned values in the destination buffer contain a"])
+ AS_ECHO([" whole number of displayed pixels, and for every 32-bit"])
+ AS_ECHO([" aligned value on one scanline all other scanlines have a"])
+ AS_ECHO([" 32-bit aligned value corresponding to the same x coordinate: */"])
value="(dst_fifo0_may_be_unaligned || (dst_bypl & 3))"
if $src_bypl_var || $dst_bypl_var; then
- $as_echo " const unsigned int dst_fifo1_may_be_unaligned = ${value};"
+ AS_ECHO([" const unsigned int dst_fifo1_may_be_unaligned = ${value};"])
else
- $as_echo "#define dst_fifo1_may_be_unaligned ${value}"
+ AS_ECHO(["#define dst_fifo1_may_be_unaligned ${value}"])
undef_macros="${undef_macros} dst_fifo1_may_be_unaligned"
fi
fi
- $as_echo ""
- $as_echo " /* declare src_offset_updated_first and src_offset_updated_last,"
- $as_echo " which hold the offsets of the first and last updated bytes in"
- $as_echo " the source image: */"
- $as_echo " tme_uint32_t src_offset_updated_first;"
- $as_echo " tme_uint32_t src_offset_updated_last;"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_offset_updated_first and src_offset_updated_last,"])
+ AS_ECHO([" which hold the offsets of the first and last updated bytes in"])
+ AS_ECHO([" the source image: */"])
+ AS_ECHO([" tme_uint32_t src_offset_updated_first;"])
+ AS_ECHO([" tme_uint32_t src_offset_updated_last;"])
- $as_echo ""
- $as_echo " /* declare src_raw0_end. when treating the source image as"
- $as_echo " an array of aligned 32-bit words, this variable holds the"
- $as_echo " address of the first word after the real source image."
- $as_echo " if the fast, aligned 32-bit word comparison loop passes"
- $as_echo " this point, the entire source image has been processed and"
- $as_echo " the function terminates: */"
- $as_echo " const tme_uint32_t *src_raw0_end;"
-
- $as_echo ""
- $as_echo " /* declare xlat_run. see the comment for the TME_FB_XLAT_RUN"
- $as_echo " macro for an explanation of what this variable does: */"
- $as_echo " int xlat_run;"
-
- $as_echo ""
- $as_echo " /* this silences gcc -Wuninitialized: */"
- $as_echo " src_fifo0_next = 0;"
- $as_echo " src_fifo0_bits = 0;"
+ AS_ECHO([""])
+ AS_ECHO([" /* declare src_raw0_end. when treating the source image as"])
+ AS_ECHO([" an array of aligned 32-bit words, this variable holds the"])
+ AS_ECHO([" address of the first word after the real source image."])
+ AS_ECHO([" if the fast, aligned 32-bit word comparison loop passes"])
+ AS_ECHO([" this point, the entire source image has been processed and"])
+ AS_ECHO([" the function terminates: */"])
+ AS_ECHO([" const tme_uint32_t *src_raw0_end;"])
+
+ AS_ECHO([""])
+ AS_ECHO([" /* declare xlat_run. see the comment for the TME_FB_XLAT_RUN"])
+ AS_ECHO([" macro for an explanation of what this variable does: */"])
+ AS_ECHO([" int xlat_run;"])
+
+ AS_ECHO([""])
+ AS_ECHO([" /* this silences gcc -Wuninitialized: */"])
+ AS_ECHO([" src_fifo0_next = 0;"])
+ AS_ECHO([" src_fifo0_bits = 0;"])
if test ${scale} = _h_; then
- $as_echo " src_fifo1_next = 0;"
- $as_echo " src_fifo1_bits = 0;"
+ AS_ECHO([" src_fifo1_next = 0;"])
+ AS_ECHO([" src_fifo1_bits = 0;"])
fi
- $as_echo " dst_fifo0_next = 0;"
- $as_echo " dst_fifo0_bits = 0;"
+ AS_ECHO([" dst_fifo0_next = 0;"])
+ AS_ECHO([" dst_fifo0_bits = 0;"])
if test ${scale} = _d_; then
- $as_echo " dst_fifo1_next = 0;"
- $as_echo " dst_fifo1_bits = 0;"
+ AS_ECHO([" dst_fifo1_next = 0;"])
+ AS_ECHO([" dst_fifo1_bits = 0;"])
fi
- $as_echo ""
- $as_echo " /* initialize src_raw0 and src_raw0_end for the fast aligned 32-bit"
- $as_echo " word comparison loop. on entry to (and when continuing) that loop,"
- $as_echo " src_raw0 always points to the aligned 32-bit word *before* the"
- $as_echo " next word to check. src_raw0_end always points after the last"
- $as_echo " word to check."
- $as_echo ""
- $as_echo " src_raw0 is actually part of the source primary bit FIFO, which"
- $as_echo " is good, because when the fast comparison fails on a word, src_raw0"
- $as_echo " is already primed and ready to work for that bit FIFO: */"
- $as_echo " src_offset_updated_first = src->tme_fb_connection_offset_updated_first;"
- $as_echo " src_offset_updated_last = TME_MIN(src->tme_fb_connection_offset_updated_last, src_bypb_real - 1);"
- $as_echo " src->tme_fb_connection_offset_updated_first = 0;"
- $as_echo " src->tme_fb_connection_offset_updated_last = src_bypb_real - 1;"
- $as_echo " if (src_offset_updated_first > src_offset_updated_last) {"
- $as_echo " return (FALSE);"
- $as_echo " }"
- $as_echo " src_raw0"
- $as_echo " = (((const tme_uint32_t *)"
- $as_echo " (src->tme_fb_connection_buffer"
- $as_echo " + (src_offset_updated_first"
- $as_echo " & (0 - (tme_uint32_t) sizeof(tme_uint32_t)))))"
- $as_echo " -1);"
- $as_echo " src_raw0_end"
- $as_echo " = ((const tme_uint32_t *)"
- $as_echo " (src->tme_fb_connection_buffer"
- $as_echo " + src_offset_updated_last"
- $as_echo " + 1));"
-
- $as_echo ""
- $as_echo " /* initialize xlat_run to -1. it can never go negative inside the"
- $as_echo " pixel translation loop, so if xlat_run stays negative for the"
- $as_echo " entire translation, it means that the source image hasn't changed"
- $as_echo " since the last translation. this information is returned to the"
- $as_echo " caller to hopefully save more work in updating the display: */"
- $as_echo " xlat_run = -1;"
+ AS_ECHO([""])
+ AS_ECHO([" /* initialize src_raw0 and src_raw0_end for the fast aligned 32-bit"])
+ AS_ECHO([" word comparison loop. on entry to (and when continuing) that loop,"])
+ AS_ECHO([" src_raw0 always points to the aligned 32-bit word *before* the"])
+ AS_ECHO([" next word to check. src_raw0_end always points after the last"])
+ AS_ECHO([" word to check."])
+ AS_ECHO([""])
+ AS_ECHO([" src_raw0 is actually part of the source primary bit FIFO, which"])
+ AS_ECHO([" is good, because when the fast comparison fails on a word, src_raw0"])
+ AS_ECHO([" is already primed and ready to work for that bit FIFO: */"])
+ AS_ECHO([" src_offset_updated_first = src->tme_fb_connection_offset_updated_first;"])
+ AS_ECHO([" src_offset_updated_last = TME_MIN(src->tme_fb_connection_offset_updated_last, src_bypb_real - 1);"])
+ AS_ECHO([" src->tme_fb_connection_offset_updated_first = 0;"])
+ AS_ECHO([" src->tme_fb_connection_offset_updated_last = src_bypb_real - 1;"])
+ AS_ECHO([" if (src_offset_updated_first > src_offset_updated_last) {"])
+ AS_ECHO([" return (FALSE);"])
+ AS_ECHO([" }"])
+ AS_ECHO([" src_raw0"])
+ AS_ECHO([" = (((const tme_uint32_t *)"])
+ AS_ECHO([" (src->tme_fb_connection_buffer"])
+ AS_ECHO([" + (src_offset_updated_first"])
+ AS_ECHO([" & (0 - (tme_uint32_t) sizeof(tme_uint32_t)))))"])
+ AS_ECHO([" -1);"])
+ AS_ECHO([" src_raw0_end"])
+ AS_ECHO([" = ((const tme_uint32_t *)"])
+ AS_ECHO([" (src->tme_fb_connection_buffer"])
+ AS_ECHO([" + src_offset_updated_last"])
+ AS_ECHO([" + 1));"])
+
+ AS_ECHO([""])
+ AS_ECHO([" /* initialize xlat_run to -1. it can never go negative inside the"])
+ AS_ECHO([" pixel translation loop, so if xlat_run stays negative for the"])
+ AS_ECHO([" entire translation, it means that the source image hasn't changed"])
+ AS_ECHO([" since the last translation. this information is returned to the"])
+ AS_ECHO([" caller to hopefully save more work in updating the display: */"])
+ AS_ECHO([" xlat_run = -1;"])
- $as_echo ""
- $as_echo " /* this is the main translation loop, which contains the fast aligned"
- $as_echo " 32-bit word comparison loop, and the pixel translation loop: */"
- $as_echo " for (;;) {"
-
- $as_echo ""
- $as_echo " /* this is the fast aligned 32-bit word comparison loop. it"
- $as_echo " terminates either when a word fails comparison, or when the"
- $as_echo " entire source image has been compared. the if test that"
- $as_echo " follows checks for the latter case and breaks the main"
- $as_echo " translation loop: */"
- $as_echo " for (; (++src_raw0 < src_raw0_end"
- $as_echo " && *src_raw0 == *TME_FB_XLAT_SRC_OLD(src_raw0)); );"
- $as_echo " if (src_raw0 >= src_raw0_end) {"
- $as_echo " break;"
- $as_echo " }"
-
- $as_echo ""
- $as_echo " /* calculate the byte offset into the source buffer of the"
- $as_echo " 32-bit word that failed comparison: */"
- $as_echo " src_off = ((tme_uint8_t *) src_raw0) - src->tme_fb_connection_buffer;"
-
- $as_echo ""
- $as_echo " /* calculate the source y pixel coordinate, and reduce"
- $as_echo " src_off from the byte offset into the buffer to the"
- $as_echo " byte offset into that scanline: */"
- $as_echo " src_y = src_off / src_bypl;"
- $as_echo " src_off = src_off % src_bypl;"
-
- $as_echo ""
- $as_echo " /* while translating pixels, we use one or more \"bit FIFOs\","
- $as_echo " each composed of one or more 32-bit integers. we load these"
- $as_echo " FIFOs 32 bits at a time. */"
- $as_echo ""
- $as_echo " /* prime the visible part of the source primary bit FIFO: */"
- $as_echo " src_fifo0 = *src_raw0;"
- $as_echo " *TME_FB_XLAT_SRC_OLD(src_raw0) = src_fifo0;"
- $as_echo " src_raw0++;"
- $as_echo " src_fifo0 = ((src_order == TME_ENDIAN_BIG)"
- $as_echo " ? tme_betoh_u32(src_fifo0)"
- $as_echo " : tme_letoh_u32(src_fifo0));"
- $as_echo ""
- $as_echo " /* if the source primary bit FIFO may be unaligned: */"
- $as_echo " if (src_fifo0_may_be_unaligned) {"
- $as_echo ""
- $as_echo " /* prime the invisible part of the source primary bit FIFO and"
- $as_echo " assume that we will not have to shift it to finish: */"
- $as_echo " src_fifo0_next = *src_raw0;"
- $as_echo " *TME_FB_XLAT_SRC_OLD(src_raw0) = src_fifo0_next;"
- $as_echo " src_raw0++;"
- $as_echo " src_fifo0_next = ((src_order == TME_ENDIAN_BIG)"
- $as_echo " ? tme_betoh_u32(src_fifo0_next)"
- $as_echo " : tme_letoh_u32(src_fifo0_next));"
- $as_echo " src_fifo0_bits = 0;"
- $as_echo ""
- $as_echo " /* if there are pixels that need to be skipped, the first 32 bits"
- $as_echo " we loaded into the FIFO may have first bits that belong to"
- $as_echo " those undisplayed (skipped) pixels. it is *not* possible for"
- $as_echo " it to have first bits that belong to the scanline pad; there"
- $as_echo " might be pad bits in the *middle* of the first 32 bits, but any"
- $as_echo " first bits *must* belong to pixels, displayed or not: */"
- $as_echo " if (src_skipx > 0"
- $as_echo " && (src_off * 8) < (src_skipx * src_bipp)) {"
- $as_echo ""
- $as_echo " /* see how many bits we will need to skip: */"
- $as_echo " src_fifo0_bits = (src_skipx * src_bipp) - (src_off * 8);"
- $as_echo ""
- $as_echo " /* if it is more than 31 bits, this is an entire 32 bits of"
- $as_echo " undisplayed pixels. just advance: */"
- $as_echo " if (src_fifo0_bits > 31) {"
- $as_echo " src_raw0--;"
- $as_echo " continue;"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* set the source x coordinate to zero: */"
- $as_echo " src_x = 0;"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* otherwise, the first 32 bits we load will have first bits for"
- $as_echo " a displayable pixel: */"
- $as_echo " else {"
- $as_echo ""
- $as_echo " /* if the source bits per pixel is 24, calculate the number of"
- $as_echo " bytes *before* the original src_raw0 of any split pixel, and"
- $as_echo " subtract this from src_off, to leave src_off as the byte offset"
- $as_echo " into the scanline of the beginning of a pixel: */"
- $as_echo " if (src_bipp == 24) {"
- $as_echo " src_fifo0_bits = (src_off % 3);"
- $as_echo " src_off -= src_fifo0_bits;"
- $as_echo ""
- $as_echo " /* if this is a split pixel, we need to prime the source primary"
- $as_echo " bit FIFO starting with the part *before* the original src_raw0."
- $as_echo " we do not have to copy to the old; it passed comparison: */"
- $as_echo " if (src_fifo0_bits) {"
- $as_echo " src_raw0--;"
- $as_echo " src_fifo0_next = src_fifo0;"
- $as_echo " src_fifo0 = ((src_order == TME_ENDIAN_BIG)"
- $as_echo " ? tme_betoh_u32(*(src_raw0 - 2))"
- $as_echo " : tme_letoh_u32(*(src_raw0 - 2)));"
- $as_echo " }"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* calculate the source x coordinate: */"
- $as_echo " src_x = ((src_off * 8) / src_bipp) - src_skipx;"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* do any shifting to finish priming the source primary FIFO: */"
- $as_echo " if (src_fifo0_bits) {"
- $as_echo " if (src_order == TME_ENDIAN_BIG) {"
- $as_echo " src_fifo0 = (src_fifo0 << src_fifo0_bits) | (src_fifo0_next >> (32 - src_fifo0_bits));"
- $as_echo " src_fifo0_next <<= src_fifo0_bits;"
- $as_echo " }"
- $as_echo " else {"
- $as_echo " src_fifo0 = (src_fifo0 >> src_fifo0_bits) | (src_fifo0_next << (32 - src_fifo0_bits));"
- $as_echo " src_fifo0_next >>= src_fifo0_bits;"
- $as_echo " }"
- $as_echo " }"
- $as_echo " src_fifo0_bits = 64 - src_fifo0_bits;"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* otherwise, the source primary FIFO is aligned: */"
- $as_echo " else {"
- $as_echo " src_x = ((src_off * 8) / src_bipp) - src_skipx;"
- $as_echo " }"
+ AS_ECHO([""])
+ AS_ECHO([" /* this is the main translation loop, which contains the fast aligned"])
+ AS_ECHO([" 32-bit word comparison loop, and the pixel translation loop: */"])
+ AS_ECHO([" for (;;) {"])
+
+ AS_ECHO([""])
+ AS_ECHO([" /* this is the fast aligned 32-bit word comparison loop. it"])
+ AS_ECHO([" terminates either when a word fails comparison, or when the"])
+ AS_ECHO([" entire source image has been compared. the if test that"])
+ AS_ECHO([" follows checks for the latter case and breaks the main"])
+ AS_ECHO([" translation loop: */"])
+ AS_ECHO([" for (; (++src_raw0 < src_raw0_end"])
+ AS_ECHO([" && *src_raw0 == *TME_FB_XLAT_SRC_OLD(src_raw0)); );"])
+ AS_ECHO([" if (src_raw0 >= src_raw0_end) {"])
+ AS_ECHO([" break;"])
+ AS_ECHO([" }"])
+
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the byte offset into the source buffer of the"])
+ AS_ECHO([" 32-bit word that failed comparison: */"])
+ AS_ECHO([" src_off = ((tme_uint8_t *) src_raw0) - src->tme_fb_connection_buffer;"])
+
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the source y pixel coordinate, and reduce"])
+ AS_ECHO([" src_off from the byte offset into the buffer to the"])
+ AS_ECHO([" byte offset into that scanline: */"])
+ AS_ECHO([" src_y = src_off / src_bypl;"])
+ AS_ECHO([" src_off = src_off % src_bypl;"])
+
+ AS_ECHO([""])
+ AS_ECHO([" /* while translating pixels, we use one or more \"bit FIFOs\","])
+ AS_ECHO([" each composed of one or more 32-bit integers. we load these"])
+ AS_ECHO([" FIFOs 32 bits at a time. */"])
+ AS_ECHO([""])
+ AS_ECHO([" /* prime the visible part of the source primary bit FIFO: */"])
+ AS_ECHO([" src_fifo0 = *src_raw0;"])
+ AS_ECHO([" *TME_FB_XLAT_SRC_OLD(src_raw0) = src_fifo0;"])
+ AS_ECHO([" src_raw0++;"])
+ AS_ECHO([" src_fifo0 = ((src_order == TME_ENDIAN_BIG)"])
+ AS_ECHO([" ? tme_betoh_u32(src_fifo0)"])
+ AS_ECHO([" : tme_letoh_u32(src_fifo0));"])
+ AS_ECHO([""])
+ AS_ECHO([" /* if the source primary bit FIFO may be unaligned: */"])
+ AS_ECHO([" if (src_fifo0_may_be_unaligned) {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* prime the invisible part of the source primary bit FIFO and"])
+ AS_ECHO([" assume that we will not have to shift it to finish: */"])
+ AS_ECHO([" src_fifo0_next = *src_raw0;"])
+ AS_ECHO([" *TME_FB_XLAT_SRC_OLD(src_raw0) = src_fifo0_next;"])
+ AS_ECHO([" src_raw0++;"])
+ AS_ECHO([" src_fifo0_next = ((src_order == TME_ENDIAN_BIG)"])
+ AS_ECHO([" ? tme_betoh_u32(src_fifo0_next)"])
+ AS_ECHO([" : tme_letoh_u32(src_fifo0_next));"])
+ AS_ECHO([" src_fifo0_bits = 0;"])
+ AS_ECHO([""])
+ AS_ECHO([" /* if there are pixels that need to be skipped, the first 32 bits"])
+ AS_ECHO([" we loaded into the FIFO may have first bits that belong to"])
+ AS_ECHO([" those undisplayed (skipped) pixels. it is *not* possible for"])
+ AS_ECHO([" it to have first bits that belong to the scanline pad; there"])
+ AS_ECHO([" might be pad bits in the *middle* of the first 32 bits, but any"])
+ AS_ECHO([" first bits *must* belong to pixels, displayed or not: */"])
+ AS_ECHO([" if (src_skipx > 0"])
+ AS_ECHO([" && (src_off * 8) < (src_skipx * src_bipp)) {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* see how many bits we will need to skip: */"])
+ AS_ECHO([" src_fifo0_bits = (src_skipx * src_bipp) - (src_off * 8);"])
+ AS_ECHO([""])
+ AS_ECHO([" /* if it is more than 31 bits, this is an entire 32 bits of"])
+ AS_ECHO([" undisplayed pixels. just advance: */"])
+ AS_ECHO([" if (src_fifo0_bits > 31) {"])
+ AS_ECHO([" src_raw0--;"])
+ AS_ECHO([" continue;"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* set the source x coordinate to zero: */"])
+ AS_ECHO([" src_x = 0;"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* otherwise, the first 32 bits we load will have first bits for"])
+ AS_ECHO([" a displayable pixel: */"])
+ AS_ECHO([" else {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* if the source bits per pixel is 24, calculate the number of"])
+ AS_ECHO([" bytes *before* the original src_raw0 of any split pixel, and"])
+ AS_ECHO([" subtract this from src_off, to leave src_off as the byte offset"])
+ AS_ECHO([" into the scanline of the beginning of a pixel: */"])
+ AS_ECHO([" if (src_bipp == 24) {"])
+ AS_ECHO([" src_fifo0_bits = (src_off % 3);"])
+ AS_ECHO([" src_off -= src_fifo0_bits;"])
+ AS_ECHO([""])
+ AS_ECHO([" /* if this is a split pixel, we need to prime the source primary"])
+ AS_ECHO([" bit FIFO starting with the part *before* the original src_raw0."])
+ AS_ECHO([" we do not have to copy to the old; it passed comparison: */"])
+ AS_ECHO([" if (src_fifo0_bits) {"])
+ AS_ECHO([" src_raw0--;"])
+ AS_ECHO([" src_fifo0_next = src_fifo0;"])
+ AS_ECHO([" src_fifo0 = ((src_order == TME_ENDIAN_BIG)"])
+ AS_ECHO([" ? tme_betoh_u32(*(src_raw0 - 2))"])
+ AS_ECHO([" : tme_letoh_u32(*(src_raw0 - 2)));"])
+ AS_ECHO([" }"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the source x coordinate: */"])
+ AS_ECHO([" src_x = ((src_off * 8) / src_bipp) - src_skipx;"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* do any shifting to finish priming the source primary FIFO: */"])
+ AS_ECHO([" if (src_fifo0_bits) {"])
+ AS_ECHO([" if (src_order == TME_ENDIAN_BIG) {"])
+ AS_ECHO([" src_fifo0 = (src_fifo0 << src_fifo0_bits) | (src_fifo0_next >> (32 - src_fifo0_bits));"])
+ AS_ECHO([" src_fifo0_next <<= src_fifo0_bits;"])
+ AS_ECHO([" }"])
+ AS_ECHO([" else {"])
+ AS_ECHO([" src_fifo0 = (src_fifo0 >> src_fifo0_bits) | (src_fifo0_next << (32 - src_fifo0_bits));"])
+ AS_ECHO([" src_fifo0_next >>= src_fifo0_bits;"])
+ AS_ECHO([" }"])
+ AS_ECHO([" }"])
+ AS_ECHO([" src_fifo0_bits = 64 - src_fifo0_bits;"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* otherwise, the source primary FIFO is aligned: */"])
+ AS_ECHO([" else {"])
+ AS_ECHO([" src_x = ((src_off * 8) / src_bipp) - src_skipx;"])
+ AS_ECHO([" }"])
if test $scale = _h_; then
- $as_echo ""
- $as_echo " /* when halving the image, we have a source secondary bit "
- $as_echo " FIFO, providing pixel values at the same source x coordinate"
- $as_echo " but on the \"other\" line. prime the source secondary"
- $as_echo " bit FIFO: */"
- $as_echo " if (src_fifo1_may_be_unaligned) {"
- $as_echo ""
- $as_echo " /* calculate the bit offset into the source buffer of"
- $as_echo " this exact same pixel on the other line: */"
- $as_echo " src_off = ((src_y ^ 1) * src_bypl * 8) + ((src_skipx + src_x) * src_bipp);"
- $as_echo ""
- $as_echo " /* calculate how many bits offset from a 32-bit boundary the pixel is: */"
- $as_echo " src_fifo1_bits = src_off % 32;"
- $as_echo ""
- $as_echo " /* set src_raw1: */"
- $as_echo " src_raw1 = (const tme_uint32_t *)"
- $as_echo " (src->tme_fb_connection_buffer"
- $as_echo " + ((src_off - src_fifo1_bits) / 8));"
- $as_echo ""
- $as_echo " /* actually prime the FIFO by loading the first two words and"
- $as_echo " shifting off any offset bits: */"
- $as_echo " src_fifo1 = *src_raw1;"
- $as_echo " *TME_FB_XLAT_SRC_OLD(src_raw1) = src_fifo1;"
- $as_echo " src_raw1++;"
- $as_echo " src_fifo1_next = *src_raw1;"
- $as_echo " *TME_FB_XLAT_SRC_OLD(src_raw1) = src_fifo1_next;"
- $as_echo " src_raw1++;"
- $as_echo " if (src_order == TME_ENDIAN_BIG) {"
- $as_echo " src_fifo1 = tme_betoh_u32(src_fifo1);"
- $as_echo " src_fifo1_next = tme_betoh_u32(src_fifo1_next);"
- $as_echo " if (src_fifo1_bits) {"
- $as_echo " src_fifo1 = (src_fifo1 << src_fifo1_bits) | (src_fifo1_next >> (32 - src_fifo1_bits));"
- $as_echo " src_fifo1_next <<= src_fifo1_bits;"
- $as_echo " }"
- $as_echo " }"
- $as_echo " else {"
- $as_echo " src_fifo1 = tme_letoh_u32(src_fifo1);"
- $as_echo " src_fifo1_next = tme_letoh_u32(src_fifo1_next);"
- $as_echo " if (src_fifo1_bits) {"
- $as_echo " src_fifo1 = (src_fifo1 >> src_fifo1_bits) | (src_fifo1_next << (32 - src_fifo1_bits));"
- $as_echo " src_fifo1_next >>= src_fifo1_bits;"
- $as_echo " }"
- $as_echo " }"
- $as_echo " src_fifo1_bits = 64 - src_fifo1_bits;"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* otherwise the source secondary FIFO is aligned: */"
- $as_echo " else {"
- $as_echo " src_raw1 = (const tme_uint32_t *)"
- $as_echo " (((tme_uint8_t *) src_raw0)"
- $as_echo " + (("
- $as_echo " /* if src_y is even, this addend is now src_bypl * 4,"
- $as_echo " else if src_y is odd, this addend is now src_bypl * 2: */"
- $as_echo " ((src_bypl * 4) >> (src_y & 1))"
- $as_echo " /* if src_y is even, this addend is now src_bypl,"
- $as_echo " else if src_y is odd, this addend is now -src_bypl: */"
- $as_echo " - (src_bypl * 3))"
- $as_echo " /* this -4 compensates for src_raw0 already having"
- $as_echo " been advanced by one: */"
- $as_echo " - 4));"
- $as_echo " src_fifo1 = *src_raw1;"
- $as_echo " *TME_FB_XLAT_SRC_OLD(src_raw1) = src_fifo1;"
- $as_echo " src_raw1++;"
- $as_echo " src_fifo1 = ((src_order == TME_ENDIAN_BIG)"
- $as_echo " ? tme_betoh_u32(src_fifo1)"
- $as_echo " : tme_letoh_u32(src_fifo1));"
- $as_echo " }"
+ AS_ECHO([""])
+ AS_ECHO([" /* when halving the image, we have a source secondary bit "])
+ AS_ECHO([" FIFO, providing pixel values at the same source x coordinate"])
+ AS_ECHO([" but on the \"other\" line. prime the source secondary"])
+ AS_ECHO([" bit FIFO: */"])
+ AS_ECHO([" if (src_fifo1_may_be_unaligned) {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the bit offset into the source buffer of"])
+ AS_ECHO([" this exact same pixel on the other line: */"])
+ AS_ECHO([" src_off = ((src_y ^ 1) * src_bypl * 8) + ((src_skipx + src_x) * src_bipp);"])
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate how many bits offset from a 32-bit boundary the pixel is: */"])
+ AS_ECHO([" src_fifo1_bits = src_off % 32;"])
+ AS_ECHO([""])
+ AS_ECHO([" /* set src_raw1: */"])
+ AS_ECHO([" src_raw1 = (const tme_uint32_t *)"])
+ AS_ECHO([" (src->tme_fb_connection_buffer"])
+ AS_ECHO([" + ((src_off - src_fifo1_bits) / 8));"])
+ AS_ECHO([""])
+ AS_ECHO([" /* actually prime the FIFO by loading the first two words and"])
+ AS_ECHO([" shifting off any offset bits: */"])
+ AS_ECHO([" src_fifo1 = *src_raw1;"])
+ AS_ECHO([" *TME_FB_XLAT_SRC_OLD(src_raw1) = src_fifo1;"])
+ AS_ECHO([" src_raw1++;"])
+ AS_ECHO([" src_fifo1_next = *src_raw1;"])
+ AS_ECHO([" *TME_FB_XLAT_SRC_OLD(src_raw1) = src_fifo1_next;"])
+ AS_ECHO([" src_raw1++;"])
+ AS_ECHO([" if (src_order == TME_ENDIAN_BIG) {"])
+ AS_ECHO([" src_fifo1 = tme_betoh_u32(src_fifo1);"])
+ AS_ECHO([" src_fifo1_next = tme_betoh_u32(src_fifo1_next);"])
+ AS_ECHO([" if (src_fifo1_bits) {"])
+ AS_ECHO([" src_fifo1 = (src_fifo1 << src_fifo1_bits) | (src_fifo1_next >> (32 - src_fifo1_bits));"])
+ AS_ECHO([" src_fifo1_next <<= src_fifo1_bits;"])
+ AS_ECHO([" }"])
+ AS_ECHO([" }"])
+ AS_ECHO([" else {"])
+ AS_ECHO([" src_fifo1 = tme_letoh_u32(src_fifo1);"])
+ AS_ECHO([" src_fifo1_next = tme_letoh_u32(src_fifo1_next);"])
+ AS_ECHO([" if (src_fifo1_bits) {"])
+ AS_ECHO([" src_fifo1 = (src_fifo1 >> src_fifo1_bits) | (src_fifo1_next << (32 - src_fifo1_bits));"])
+ AS_ECHO([" src_fifo1_next >>= src_fifo1_bits;"])
+ AS_ECHO([" }"])
+ AS_ECHO([" }"])
+ AS_ECHO([" src_fifo1_bits = 64 - src_fifo1_bits;"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* otherwise the source secondary FIFO is aligned: */"])
+ AS_ECHO([" else {"])
+ AS_ECHO([" src_raw1 = (const tme_uint32_t *)"])
+ AS_ECHO([" (((tme_uint8_t *) src_raw0)"])
+ AS_ECHO([" + (("])
+ AS_ECHO([" /* if src_y is even, this addend is now src_bypl * 4,"])
+ AS_ECHO([" else if src_y is odd, this addend is now src_bypl * 2: */"])
+ AS_ECHO([" ((src_bypl * 4) >> (src_y & 1))"])
+ AS_ECHO([" /* if src_y is even, this addend is now src_bypl,"])
+ AS_ECHO([" else if src_y is odd, this addend is now -src_bypl: */"])
+ AS_ECHO([" - (src_bypl * 3))"])
+ AS_ECHO([" /* this -4 compensates for src_raw0 already having"])
+ AS_ECHO([" been advanced by one: */"])
+ AS_ECHO([" - 4));"])
+ AS_ECHO([" src_fifo1 = *src_raw1;"])
+ AS_ECHO([" *TME_FB_XLAT_SRC_OLD(src_raw1) = src_fifo1;"])
+ AS_ECHO([" src_raw1++;"])
+ AS_ECHO([" src_fifo1 = ((src_order == TME_ENDIAN_BIG)"])
+ AS_ECHO([" ? tme_betoh_u32(src_fifo1)"])
+ AS_ECHO([" : tme_letoh_u32(src_fifo1));"])
+ AS_ECHO([" }"])
fi
if test $scale != _; then
- $as_echo ""
- $as_echo " /* calculate the destination coordinates: */"
- $as_echo " dst_y = src_y${scale_math};"
- $as_echo " dst_x = src_x${scale_math};"
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the destination coordinates: */"])
+ AS_ECHO([" dst_y = src_y${scale_math};"])
+ AS_ECHO([" dst_x = src_x${scale_math};"])
fi
- $as_echo ""
- $as_echo " /* prime the destination primary bit FIFO: */"
- $as_echo " dst_fifo0 = 0;"
- $as_echo " if (dst_fifo0_may_be_unaligned) {"
- $as_echo ""
- $as_echo " /* calculate the bit offset into the destination buffer of"
- $as_echo " the destination pixel: */"
- $as_echo " dst_off = (dst_y * dst_bypl * 8) + ((dst_skipx + dst_x) * dst_bipp);"
- $as_echo ""
- $as_echo " /* calculate the number of bits that will be in the primed FIFO: */"
- $as_echo " dst_fifo0_bits = dst_off % 32;"
- $as_echo ""
- $as_echo " /* set dst_raw0: */"
- $as_echo " dst_raw0 = (tme_uint32_t *)"
- $as_echo " (dst->tme_fb_connection_buffer"
- $as_echo " + ((dst_off - dst_fifo0_bits) / 8));"
- $as_echo ""
- $as_echo " /* prime the primary destination FIFO: */"
- $as_echo " dst_fifo0_next = 0;"
- $as_echo " if (dst_fifo0_bits) {"
- $as_echo " dst_fifo0_next = (src_order == TME_ENDIAN_BIG"
- $as_echo " ? (tme_betoh_u32(*dst_raw0) & (0xffffffffUL << (32 - dst_fifo0_bits)))"
- $as_echo " : (tme_letoh_u32(*dst_raw0) & (0xffffffffUL >> (32 - dst_fifo0_bits))));"
- $as_echo " }"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* otherwise the destination primary FIFO is aligned: */"
- $as_echo " else {"
- $as_echo " dst_off = (dst_y * dst_bypl) + (((dst_skipx + dst_x) * dst_bipp) / 8);"
- $as_echo " dst_raw0 = (tme_uint32_t *) (dst->tme_fb_connection_buffer + dst_off);"
- $as_echo " }"
+ AS_ECHO([""])
+ AS_ECHO([" /* prime the destination primary bit FIFO: */"])
+ AS_ECHO([" dst_fifo0 = 0;"])
+ AS_ECHO([" if (dst_fifo0_may_be_unaligned) {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the bit offset into the destination buffer of"])
+ AS_ECHO([" the destination pixel: */"])
+ AS_ECHO([" dst_off = (dst_y * dst_bypl * 8) + ((dst_skipx + dst_x) * dst_bipp);"])
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the number of bits that will be in the primed FIFO: */"])
+ AS_ECHO([" dst_fifo0_bits = dst_off % 32;"])
+ AS_ECHO([""])
+ AS_ECHO([" /* set dst_raw0: */"])
+ AS_ECHO([" dst_raw0 = (tme_uint32_t *)"])
+ AS_ECHO([" (dst->tme_fb_connection_buffer"])
+ AS_ECHO([" + ((dst_off - dst_fifo0_bits) / 8));"])
+ AS_ECHO([""])
+ AS_ECHO([" /* prime the primary destination FIFO: */"])
+ AS_ECHO([" dst_fifo0_next = 0;"])
+ AS_ECHO([" if (dst_fifo0_bits) {"])
+ AS_ECHO([" dst_fifo0_next = (src_order == TME_ENDIAN_BIG"])
+ AS_ECHO([" ? (tme_betoh_u32(*dst_raw0) & (0xffffffffUL << (32 - dst_fifo0_bits)))"])
+ AS_ECHO([" : (tme_letoh_u32(*dst_raw0) & (0xffffffffUL >> (32 - dst_fifo0_bits))));"])
+ AS_ECHO([" }"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* otherwise the destination primary FIFO is aligned: */"])
+ AS_ECHO([" else {"])
+ AS_ECHO([" dst_off = (dst_y * dst_bypl) + (((dst_skipx + dst_x) * dst_bipp) / 8);"])
+ AS_ECHO([" dst_raw0 = (tme_uint32_t *) (dst->tme_fb_connection_buffer + dst_off);"])
+ AS_ECHO([" }"])
if test $scale = _d_; then
- $as_echo ""
- $as_echo " /* when doubling the image, we have a destination secondary bit "
- $as_echo " FIFO, for pixel values at the same source x coordinate"
- $as_echo " but on the \"other\" line. prime the destination secondary"
- $as_echo " bit FIFO: */"
- $as_echo " dst_fifo1 = 0;"
- $as_echo " if (dst_fifo1_may_be_unaligned) {"
- $as_echo ""
- $as_echo " /* calculate the bit offset into the destination buffer of"
- $as_echo " the destination pixel: */"
- $as_echo " dst_off = ((dst_y + 1) * dst_bypl * 8) + ((dst_skipx + dst_x) * dst_bipp);"
- $as_echo ""
- $as_echo " /* calculate the number of bits that will be in the primed FIFO: */"
- $as_echo " dst_fifo1_bits = dst_off % 32;"
- $as_echo ""
- $as_echo " /* set dst_raw1: */"
- $as_echo " dst_raw1 = (tme_uint32_t *)"
- $as_echo " (dst->tme_fb_connection_buffer"
- $as_echo " + ((dst_off - dst_fifo1_bits) / 8));"
- $as_echo ""
- $as_echo " /* prime the primary destination FIFO: */"
- $as_echo " dst_fifo1_next = 0;"
- $as_echo " if (dst_fifo1_bits) {"
- $as_echo " dst_fifo1_next = (src_order == TME_ENDIAN_BIG"
- $as_echo " ? (tme_betoh_u32(*dst_raw1) & (0xffffffffUL << (32 - dst_fifo1_bits)))"
- $as_echo " : (tme_letoh_u32(*dst_raw1) & (0xffffffffUL >> (32 - dst_fifo1_bits))));"
- $as_echo " }"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* otherwise, the destination secondary FIFO is aligned: */"
- $as_echo " else {"
- $as_echo " dst_raw1 = (tme_uint32_t *)"
- $as_echo " (((tme_uint8_t *) dst_raw0)"
- $as_echo " + dst_bypl);"
- $as_echo " }"
+ AS_ECHO([""])
+ AS_ECHO([" /* when doubling the image, we have a destination secondary bit "])
+ AS_ECHO([" FIFO, for pixel values at the same source x coordinate"])
+ AS_ECHO([" but on the \"other\" line. prime the destination secondary"])
+ AS_ECHO([" bit FIFO: */"])
+ AS_ECHO([" dst_fifo1 = 0;"])
+ AS_ECHO([" if (dst_fifo1_may_be_unaligned) {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the bit offset into the destination buffer of"])
+ AS_ECHO([" the destination pixel: */"])
+ AS_ECHO([" dst_off = ((dst_y + 1) * dst_bypl * 8) + ((dst_skipx + dst_x) * dst_bipp);"])
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the number of bits that will be in the primed FIFO: */"])
+ AS_ECHO([" dst_fifo1_bits = dst_off % 32;"])
+ AS_ECHO([""])
+ AS_ECHO([" /* set dst_raw1: */"])
+ AS_ECHO([" dst_raw1 = (tme_uint32_t *)"])
+ AS_ECHO([" (dst->tme_fb_connection_buffer"])
+ AS_ECHO([" + ((dst_off - dst_fifo1_bits) / 8));"])
+ AS_ECHO([""])
+ AS_ECHO([" /* prime the primary destination FIFO: */"])
+ AS_ECHO([" dst_fifo1_next = 0;"])
+ AS_ECHO([" if (dst_fifo1_bits) {"])
+ AS_ECHO([" dst_fifo1_next = (src_order == TME_ENDIAN_BIG"])
+ AS_ECHO([" ? (tme_betoh_u32(*dst_raw1) & (0xffffffffUL << (32 - dst_fifo1_bits)))"])
+ AS_ECHO([" : (tme_letoh_u32(*dst_raw1) & (0xffffffffUL >> (32 - dst_fifo1_bits))));"])
+ AS_ECHO([" }"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* otherwise, the destination secondary FIFO is aligned: */"])
+ AS_ECHO([" else {"])
+ AS_ECHO([" dst_raw1 = (tme_uint32_t *)"])
+ AS_ECHO([" (((tme_uint8_t *) dst_raw0)"])
+ AS_ECHO([" + dst_bypl);"])
+ AS_ECHO([" }"])
fi
# we want to unroll the pixel translation loop to read as many
@@ -1838,16 +1838,16 @@ for src_key in ${src_all}; do
src_fifo_shift=32
fi
- $as_echo ""
- $as_echo " /* since src_bipp is known at code-generation time, the"
- $as_echo " pixel translation loop is unrolled to translate all"
- $as_echo " source pixels in the 32-bit visible part of the source"
- $as_echo " bit FIFO(s) before shifting."
- $as_echo ""
- $as_echo " in this case, src_bipp is known to be ${src_bipp}, so "`expr ${src_unroll} \* ${src_iter_scale}`" pixels will"
- $as_echo " be read out of the source bit FIFO(s) before shifting, and"
- $as_echo " when the source bit FIFO(s) are shifted, they are shifted"
- $as_echo " ${src_fifo_shift} bits at a time: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* since src_bipp is known at code-generation time, the"])
+ AS_ECHO([" pixel translation loop is unrolled to translate all"])
+ AS_ECHO([" source pixels in the 32-bit visible part of the source"])
+ AS_ECHO([" bit FIFO(s) before shifting."])
+ AS_ECHO([""])
+ AS_ECHO([" in this case, src_bipp is known to be ${src_bipp}, so "`expr ${src_unroll} \* ${src_iter_scale}`" pixels will"])
+ AS_ECHO([" be read out of the source bit FIFO(s) before shifting, and"])
+ AS_ECHO([" when the source bit FIFO(s) are shifted, they are shifted"])
+ AS_ECHO([" ${src_fifo_shift} bits at a time: */"])
fi
# if dst_bipp is known now, see how many times we can unroll the
@@ -1885,16 +1885,16 @@ for src_key in ${src_all}; do
dst_fifo_shift=32
fi
- $as_echo ""
- $as_echo " /* since dst_bipp is known at code-generation time, the pixel"
- $as_echo " translation loop is unrolled to translate all destination"
- $as_echo " pixels in the 32-bit visible part of the destination bit"
- $as_echo " FIFO(s) before shifting."
- $as_echo ""
- $as_echo " in this case, dst_bipp is known to be ${dst_bipp}, so "`expr ${dst_unroll} \* ${dst_iter_scale}`" pixels will"
- $as_echo " be written into the destination bit FIFO(s) before shifting,"
- $as_echo " and when the destination bit FIFO(s) are shifted, they are"
- $as_echo " shifted ${dst_fifo_shift} bits at a time: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* since dst_bipp is known at code-generation time, the pixel"])
+ AS_ECHO([" translation loop is unrolled to translate all destination"])
+ AS_ECHO([" pixels in the 32-bit visible part of the destination bit"])
+ AS_ECHO([" FIFO(s) before shifting."])
+ AS_ECHO([""])
+ AS_ECHO([" in this case, dst_bipp is known to be ${dst_bipp}, so "`expr ${dst_unroll} \* ${dst_iter_scale}`" pixels will"])
+ AS_ECHO([" be written into the destination bit FIFO(s) before shifting,"])
+ AS_ECHO([" and when the destination bit FIFO(s) are shifted, they are"])
+ AS_ECHO([" shifted ${dst_fifo_shift} bits at a time: */"])
fi
# unroll the translation loop the maximum number amount of times:
@@ -1905,17 +1905,17 @@ for src_key in ${src_all}; do
unroll=${dst_unroll}
fi
- $as_echo ""
- $as_echo " /* src_unroll = ${src_unroll}, src_iter_scale = ${src_iter_scale}"
- $as_echo " dst_unroll = ${dst_unroll}, dst_iter_scale = ${dst_iter_scale} */"
- $as_echo " for (xlat_run = TME_FB_XLAT_RUN;"
- $as_echo " xlat_run > 0; ) {"
+ AS_ECHO([""])
+ AS_ECHO([" /* src_unroll = ${src_unroll}, src_iter_scale = ${src_iter_scale}"])
+ AS_ECHO([" dst_unroll = ${dst_unroll}, dst_iter_scale = ${dst_iter_scale} */"])
+ AS_ECHO([" for (xlat_run = TME_FB_XLAT_RUN;"])
+ AS_ECHO([" xlat_run > 0; ) {"])
iter=0
while test `expr ${iter} \< ${unroll}` = 1; do
- $as_echo ""
- $as_echo " /* iter #${iter} */"
- $as_echo ""
+ AS_ECHO([""])
+ AS_ECHO([" /* iter #${iter} */"])
+ AS_ECHO([""])
iter_next=`expr ${iter} + 1`
# the number of bits to skip in a source FIFO to get to
@@ -1923,41 +1923,41 @@ for src_key in ${src_all}; do
src_shift=`expr ${iter} % ${src_unroll}`
src_shift='('`expr ${src_shift} \* ${src_iter_scale}`' * src_bipp)'
- $as_echo " /* get a pixel from the source primary FIFO: */"
- $as_echo " pixel ="
- $as_echo " ((src_fifo0"
- $as_echo " >> (src_order == TME_ENDIAN_BIG"
- $as_echo " ? (32 - (src_bipp + ${src_shift}))"
- $as_echo " : ${src_shift})));"
+ AS_ECHO([" /* get a pixel from the source primary FIFO: */"])
+ AS_ECHO([" pixel ="])
+ AS_ECHO([" ((src_fifo0"])
+ AS_ECHO([" >> (src_order == TME_ENDIAN_BIG"])
+ AS_ECHO([" ? (32 - (src_bipp + ${src_shift}))"])
+ AS_ECHO([" : ${src_shift})));"])
indent0=X
if test $scale != _h_; then
if test "x${src_mask_g}" = x; then
- $as_echo ""
- $as_echo " /* since source pixels are known at compile time to"
- $as_echo " not have subfields, map the source pixel into the"
- $as_echo " destination pixel: */"
- $as_echo " pixel = dst->tme_fb_connection_map_pixel[[pixel & src_mask]];"
+ AS_ECHO([""])
+ AS_ECHO([" /* since source pixels are known at compile time to"])
+ AS_ECHO([" not have subfields, map the source pixel into the"])
+ AS_ECHO([" destination pixel: */"])
+ AS_ECHO([" pixel = dst->tme_fb_connection_map_pixel[[pixel & src_mask]];"])
else
- $as_echo ""
- $as_echo " /* if the source depth is within the threshold for pixel"
- $as_echo " mapping, or if source pixels don't have subfields,"
- $as_echo " map the source pixel into the destination pixel: */"
- $as_echo " if (src_mask <= TME_FB_XLAT_MAP_INDEX_MASK_MAX"
- $as_echo " || src_mask_g == src_mask) {"
- $as_echo " pixel = dst->tme_fb_connection_map_pixel[[pixel & src_mask]];"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* otherwise, we will decompose this source pixel"
- $as_echo " and then compose the destination pixel: */"
- $as_echo " else {"
- $as_echo ""
- $as_echo " /* map the pixel subfields into intensities: */"
- $as_echo " value_g = TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"
+ AS_ECHO([""])
+ AS_ECHO([" /* if the source depth is within the threshold for pixel"])
+ AS_ECHO([" mapping, or if source pixels don't have subfields,"])
+ AS_ECHO([" map the source pixel into the destination pixel: */"])
+ AS_ECHO([" if (src_mask <= TME_FB_XLAT_MAP_INDEX_MASK_MAX"])
+ AS_ECHO([" || src_mask_g == src_mask) {"])
+ AS_ECHO([" pixel = dst->tme_fb_connection_map_pixel[[pixel & src_mask]];"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* otherwise, we will decompose this source pixel"])
+ AS_ECHO([" and then compose the destination pixel: */"])
+ AS_ECHO([" else {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* map the pixel subfields into intensities: */"])
+ AS_ECHO([" value_g = TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"])
if test "x${src_class}" != xm; then
- $as_echo " value_r = TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"
- $as_echo " value_b = TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"
+ AS_ECHO([" value_r = TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"])
+ AS_ECHO([" value_b = TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"])
fi
indent0=" "
src_mask_i=src_mask_i
@@ -1966,111 +1966,111 @@ for src_key in ${src_all}; do
else
- $as_echo ""
- $as_echo " /* map the pixel subfields into intensities: */"
- $as_echo " value_g = TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"
+ AS_ECHO([""])
+ AS_ECHO([" /* map the pixel subfields into intensities: */"])
+ AS_ECHO([" value_g = TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"])
if test "x${src_class}" != xm; then
- $as_echo " value_r = TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"
- $as_echo " value_b = TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"
+ AS_ECHO([" value_r = TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"])
+ AS_ECHO([" value_b = TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"])
fi
- $as_echo ""
- $as_echo " /* get a second pixel, from the source secondary FIFO: */"
- $as_echo " pixel ="
- $as_echo " ((src_fifo1"
- $as_echo " >> (src_order == TME_ENDIAN_BIG"
- $as_echo " ? (32 - (src_bipp + ${src_shift}))"
- $as_echo " : ${src_shift})));"
-
- $as_echo ""
- $as_echo " /* map the pixel subfields into intensities and accumulate them: */"
- $as_echo " value_g += TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"
+ AS_ECHO([""])
+ AS_ECHO([" /* get a second pixel, from the source secondary FIFO: */"])
+ AS_ECHO([" pixel ="])
+ AS_ECHO([" ((src_fifo1"])
+ AS_ECHO([" >> (src_order == TME_ENDIAN_BIG"])
+ AS_ECHO([" ? (32 - (src_bipp + ${src_shift}))"])
+ AS_ECHO([" : ${src_shift})));"])
+
+ AS_ECHO([""])
+ AS_ECHO([" /* map the pixel subfields into intensities and accumulate them: */"])
+ AS_ECHO([" value_g += TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"])
if test "x${src_class}" != xm; then
- $as_echo " value_r += TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"
- $as_echo " value_b += TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"
+ AS_ECHO([" value_r += TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"])
+ AS_ECHO([" value_b += TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"])
fi
- $as_echo ""
- $as_echo " /* get third and fourth pixels, from the source primary"
- $as_echo " FIFO and source secondary FIFO, respectively. if"
- $as_echo " src_bipp is 24 or greater, these pixels are not yet"
- $as_echo " entirely in the first parts of the FIFOs, so we need"
- $as_echo " to shift: */"
- $as_echo " if (src_bipp >= 24) {"
- $as_echo " TME_FB_XLAT_SHIFT_SRC(src_fifo0_may_be_unaligned,"
- $as_echo " src_fifo0,"
- $as_echo " src_fifo0_next,"
- $as_echo " src_fifo0_bits,"
- $as_echo " src_bipp,"
- $as_echo " src_raw0,"
- $as_echo " src_order);"
- $as_echo " TME_FB_XLAT_SHIFT_SRC(src_fifo1_may_be_unaligned,"
- $as_echo " src_fifo1,"
- $as_echo " src_fifo1_next,"
- $as_echo " src_fifo1_bits,"
- $as_echo " src_bipp,"
- $as_echo " src_raw1,"
- $as_echo " src_order);"
- $as_echo " pixel ="
- $as_echo " ((src_fifo0"
- $as_echo " >> (src_order == TME_ENDIAN_BIG"
- $as_echo " ? (32 - (src_bipp + ${src_shift}))"
- $as_echo " : ${src_shift})));"
-
- $as_echo ""
- $as_echo " /* map the pixel subfields into intensities and accumulate them: */"
- $as_echo " value_g += TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"
+ AS_ECHO([""])
+ AS_ECHO([" /* get third and fourth pixels, from the source primary"])
+ AS_ECHO([" FIFO and source secondary FIFO, respectively. if"])
+ AS_ECHO([" src_bipp is 24 or greater, these pixels are not yet"])
+ AS_ECHO([" entirely in the first parts of the FIFOs, so we need"])
+ AS_ECHO([" to shift: */"])
+ AS_ECHO([" if (src_bipp >= 24) {"])
+ AS_ECHO([" TME_FB_XLAT_SHIFT_SRC(src_fifo0_may_be_unaligned,"])
+ AS_ECHO([" src_fifo0,"])
+ AS_ECHO([" src_fifo0_next,"])
+ AS_ECHO([" src_fifo0_bits,"])
+ AS_ECHO([" src_bipp,"])
+ AS_ECHO([" src_raw0,"])
+ AS_ECHO([" src_order);"])
+ AS_ECHO([" TME_FB_XLAT_SHIFT_SRC(src_fifo1_may_be_unaligned,"])
+ AS_ECHO([" src_fifo1,"])
+ AS_ECHO([" src_fifo1_next,"])
+ AS_ECHO([" src_fifo1_bits,"])
+ AS_ECHO([" src_bipp,"])
+ AS_ECHO([" src_raw1,"])
+ AS_ECHO([" src_order);"])
+ AS_ECHO([" pixel ="])
+ AS_ECHO([" ((src_fifo0"])
+ AS_ECHO([" >> (src_order == TME_ENDIAN_BIG"])
+ AS_ECHO([" ? (32 - (src_bipp + ${src_shift}))"])
+ AS_ECHO([" : ${src_shift})));"])
+
+ AS_ECHO([""])
+ AS_ECHO([" /* map the pixel subfields into intensities and accumulate them: */"])
+ AS_ECHO([" value_g += TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"])
if test "x${src_class}" != xm; then
- $as_echo " value_r += TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"
- $as_echo " value_b += TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"
+ AS_ECHO([" value_r += TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"])
+ AS_ECHO([" value_b += TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"])
fi
- $as_echo ""
+ AS_ECHO([""])
- $as_echo " pixel ="
- $as_echo " ((src_fifo1"
- $as_echo " >> (src_order == TME_ENDIAN_BIG"
- $as_echo " ? (32 - (src_bipp + ${src_shift}))"
- $as_echo " : ${src_shift})));"
-
- $as_echo ""
- $as_echo " /* map the pixel subfields into intensities and accumulate them: */"
- $as_echo " value_g += TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"
+ AS_ECHO([" pixel ="])
+ AS_ECHO([" ((src_fifo1"])
+ AS_ECHO([" >> (src_order == TME_ENDIAN_BIG"])
+ AS_ECHO([" ? (32 - (src_bipp + ${src_shift}))"])
+ AS_ECHO([" : ${src_shift})));"])
+
+ AS_ECHO([""])
+ AS_ECHO([" /* map the pixel subfields into intensities and accumulate them: */"])
+ AS_ECHO([" value_g += TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"])
if test "x${src_class}" != xm; then
- $as_echo " value_r += TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"
- $as_echo " value_b += TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"
+ AS_ECHO([" value_r += TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"])
+ AS_ECHO([" value_b += TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"])
fi
- $as_echo " }"
- $as_echo ""
- $as_echo " /* otherwise, the third and fourth pixels are already in the"
- $as_echo " visible parts of the source bit FIFOs; we just have to"
- $as_echo " reach over the pixels we already read to get at them: */"
- $as_echo " else {"
- $as_echo " pixel ="
- $as_echo " ((src_fifo0"
- $as_echo " >> (src_order == TME_ENDIAN_BIG"
- $as_echo " ? (32 - (src_bipp + (${src_shift} + src_bipp)))"
- $as_echo " : (${src_shift} + src_bipp))));"
- $as_echo ""
- $as_echo " /* map the pixel subfields into intensities and accumulate them: */"
- $as_echo " value_g += TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* otherwise, the third and fourth pixels are already in the"])
+ AS_ECHO([" visible parts of the source bit FIFOs; we just have to"])
+ AS_ECHO([" reach over the pixels we already read to get at them: */"])
+ AS_ECHO([" else {"])
+ AS_ECHO([" pixel ="])
+ AS_ECHO([" ((src_fifo0"])
+ AS_ECHO([" >> (src_order == TME_ENDIAN_BIG"])
+ AS_ECHO([" ? (32 - (src_bipp + (${src_shift} + src_bipp)))"])
+ AS_ECHO([" : (${src_shift} + src_bipp))));"])
+ AS_ECHO([""])
+ AS_ECHO([" /* map the pixel subfields into intensities and accumulate them: */"])
+ AS_ECHO([" value_g += TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"])
if test "x${src_class}" != xm; then
- $as_echo " value_r += TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"
- $as_echo " value_b += TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"
+ AS_ECHO([" value_r += TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"])
+ AS_ECHO([" value_b += TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"])
fi
- $as_echo ""
- $as_echo " pixel ="
- $as_echo " ((src_fifo1"
- $as_echo " >> (src_order == TME_ENDIAN_BIG"
- $as_echo " ? (32 - (src_bipp + (${src_shift} + src_bipp)))"
- $as_echo " : (${src_shift} + src_bipp))));"
- $as_echo ""
- $as_echo " /* map the pixel subfields into intensities and accumulate them: */"
- $as_echo " value_g += TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"
+ AS_ECHO([""])
+ AS_ECHO([" pixel ="])
+ AS_ECHO([" ((src_fifo1"])
+ AS_ECHO([" >> (src_order == TME_ENDIAN_BIG"])
+ AS_ECHO([" ? (32 - (src_bipp + (${src_shift} + src_bipp)))"])
+ AS_ECHO([" : (${src_shift} + src_bipp))));"])
+ AS_ECHO([""])
+ AS_ECHO([" /* map the pixel subfields into intensities and accumulate them: */"])
+ AS_ECHO([" value_g += TME_FB_XLAT_MAP(pixel, src_mask_g, src_mask_i, src_indexed, src->tme_fb_connection_map_g);"])
if test "x${src_class}" != xm; then
- $as_echo " value_r += TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"
- $as_echo " value_b += TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"
+ AS_ECHO([" value_r += TME_FB_XLAT_MAP(pixel, src_mask_r, src_mask_i, src_indexed, src->tme_fb_connection_map_r);"])
+ AS_ECHO([" value_b += TME_FB_XLAT_MAP(pixel, src_mask_b, src_mask_i, src_indexed, src->tme_fb_connection_map_b);"])
fi
- $as_echo " }"
+ AS_ECHO([" }"])
indent0=
src_mask_i='((src_mask_i * 4) + 3)'
src_mask_i_max='(TME_FB_XLAT_MAP_INDEX_MASK_MAX / 4)'
@@ -2079,290 +2079,290 @@ for src_key in ${src_all}; do
# if we may have intensities:
#
if test "X${indent0}" != XX; then
- $as_echo ""
+ AS_ECHO([""])
indent1=X
case "x${src_class}" in
xm)
- $as_echo "${indent0} /* since the source_class is known as monochrome at code-generation"
- $as_echo "${indent0} time, we map the green intensity directly into a pixel. we may have"
- $as_echo "${indent0} to scale the intensity to be in the lookup range: */"
- $as_echo "${indent0} if (src_mask_i > ${src_mask_i_max}) {"
- $as_echo "${indent0} value_g /= TME_FB_XLAT_MAP_LINEAR_SCALE(${src_mask_i}, TME_FB_XLAT_MAP_INDEX_MASK_MAX);"
- $as_echo "${indent0} }"
- $as_echo "${indent0} pixel = dst->tme_fb_connection_map_pixel[[value_g]];"
+ AS_ECHO(["${indent0} /* since the source_class is known as monochrome at code-generation"])
+ AS_ECHO(["${indent0} time, we map the green intensity directly into a pixel. we may have"])
+ AS_ECHO(["${indent0} to scale the intensity to be in the lookup range: */"])
+ AS_ECHO(["${indent0} if (src_mask_i > ${src_mask_i_max}) {"])
+ AS_ECHO(["${indent0} value_g /= TME_FB_XLAT_MAP_LINEAR_SCALE(${src_mask_i}, TME_FB_XLAT_MAP_INDEX_MASK_MAX);"])
+ AS_ECHO(["${indent0} }"])
+ AS_ECHO(["${indent0} pixel = dst->tme_fb_connection_map_pixel[[value_g]];"])
;;
x)
- $as_echo "${indent0} /* if the source class is monochrome, we map the green intensity"
- $as_echo "${indent0} directly into a pixel. we may have to scale the intensity"
- $as_echo "${indent0} to be in the lookup range: */"
- $as_echo "${indent0} if (src->tme_fb_connection_class == TME_FB_XLAT_CLASS_MONOCHROME) {"
- $as_echo "${indent0} if (src_mask_i > ${src_mask_i_max}) {"
- $as_echo "${indent0} value_g /= TME_FB_XLAT_MAP_LINEAR_SCALE(${src_mask_i}, TME_FB_XLAT_MAP_INDEX_MASK_MAX);"
- $as_echo "${indent0} }"
- $as_echo "${indent0} pixel = dst->tme_fb_connection_map_pixel[[value_g]];"
- $as_echo "${indent0} }"
- $as_echo ""
- $as_echo "${indent0} /* otherwise, we have to consider all three intensities: */"
- $as_echo "${indent0} else {"
+ AS_ECHO(["${indent0} /* if the source class is monochrome, we map the green intensity"])
+ AS_ECHO(["${indent0} directly into a pixel. we may have to scale the intensity"])
+ AS_ECHO(["${indent0} to be in the lookup range: */"])
+ AS_ECHO(["${indent0} if (src->tme_fb_connection_class == TME_FB_XLAT_CLASS_MONOCHROME) {"])
+ AS_ECHO(["${indent0} if (src_mask_i > ${src_mask_i_max}) {"])
+ AS_ECHO(["${indent0} value_g /= TME_FB_XLAT_MAP_LINEAR_SCALE(${src_mask_i}, TME_FB_XLAT_MAP_INDEX_MASK_MAX);"])
+ AS_ECHO(["${indent0} }"])
+ AS_ECHO(["${indent0} pixel = dst->tme_fb_connection_map_pixel[[value_g]];"])
+ AS_ECHO(["${indent0} }"])
+ AS_ECHO([""])
+ AS_ECHO(["${indent0} /* otherwise, we have to consider all three intensities: */"])
+ AS_ECHO(["${indent0} else {"])
indent1="${indent0} "
;;
*)
- $as_echo "${indent0} /* we have to consider all three intensities: */"
+ AS_ECHO(["${indent0} /* we have to consider all three intensities: */"])
indent1="${indent0}"
esac
if test "X${indent1}" != "XX"; then
- $as_echo ""
- $as_echo "${indent1} /* if destination intensities are indexed: */"
- $as_echo "${indent1} if (dst_indexed) {"
- $as_echo ""
- $as_echo "${indent1} /* we may have to scale the intensities to be in the lookup range: */"
- $as_echo "${indent1} if (src_mask_i > ${src_mask_i_max}) {"
- $as_echo "${indent1} value_g /= TME_FB_XLAT_MAP_LINEAR_SCALE(${src_mask_i}, TME_FB_XLAT_MAP_INDEX_MASK_MAX);"
- $as_echo "${indent1} value_r /= TME_FB_XLAT_MAP_LINEAR_SCALE(${src_mask_i}, TME_FB_XLAT_MAP_INDEX_MASK_MAX);"
- $as_echo "${indent1} value_b /= TME_FB_XLAT_MAP_LINEAR_SCALE(${src_mask_i}, TME_FB_XLAT_MAP_INDEX_MASK_MAX);"
- $as_echo "${indent1} }"
- $as_echo ""
- $as_echo "${indent1} /* form the pixel: */"
- $as_echo "${indent1} pixel = _TME_FB_XLAT_MAP_INDEX(value_g, dst_mask_g, dst->tme_fb_connection_map_g);"
- $as_echo "${indent1} pixel |= _TME_FB_XLAT_MAP_INDEX(value_r, dst_mask_r, dst->tme_fb_connection_map_r);"
- $as_echo "${indent1} pixel |= _TME_FB_XLAT_MAP_INDEX(value_b, dst_mask_b, dst->tme_fb_connection_map_b);"
- $as_echo "${indent1} pixel |= 0xff000000;"
- $as_echo "${indent1} }"
- $as_echo ""
- $as_echo "${indent1} /* otherwise, destination intensities are linear: */"
- $as_echo "${indent1} else {"
- $as_echo ""
- $as_echo "${indent1} /* form the pixel: */"
- $as_echo "${indent1} pixel = _TME_FB_XLAT_MAP_LINEAR(value_g, ${src_mask_i}, dst_mask_g);"
- $as_echo "${indent1} pixel |= _TME_FB_XLAT_MAP_LINEAR(value_r, ${src_mask_i}, dst_mask_r);"
- $as_echo "${indent1} pixel |= _TME_FB_XLAT_MAP_LINEAR(value_b, ${src_mask_i}, dst_mask_b);"
- $as_echo "${indent1} pixel |= 0xff000000;"
- $as_echo ""
- $as_echo "${indent1} /* if destination pixels are indexed: */"
- $as_echo "${indent1} if (dst_masks_default) {"
- $as_echo "${indent1} pixel = dst->tme_fb_connection_map_pixel[[pixel]];"
- $as_echo "${indent1} }"
- $as_echo "${indent1} }"
+ AS_ECHO([""])
+ AS_ECHO(["${indent1} /* if destination intensities are indexed: */"])
+ AS_ECHO(["${indent1} if (dst_indexed) {"])
+ AS_ECHO([""])
+ AS_ECHO(["${indent1} /* we may have to scale the intensities to be in the lookup range: */"])
+ AS_ECHO(["${indent1} if (src_mask_i > ${src_mask_i_max}) {"])
+ AS_ECHO(["${indent1} value_g /= TME_FB_XLAT_MAP_LINEAR_SCALE(${src_mask_i}, TME_FB_XLAT_MAP_INDEX_MASK_MAX);"])
+ AS_ECHO(["${indent1} value_r /= TME_FB_XLAT_MAP_LINEAR_SCALE(${src_mask_i}, TME_FB_XLAT_MAP_INDEX_MASK_MAX);"])
+ AS_ECHO(["${indent1} value_b /= TME_FB_XLAT_MAP_LINEAR_SCALE(${src_mask_i}, TME_FB_XLAT_MAP_INDEX_MASK_MAX);"])
+ AS_ECHO(["${indent1} }"])
+ AS_ECHO([""])
+ AS_ECHO(["${indent1} /* form the pixel: */"])
+ AS_ECHO(["${indent1} pixel = _TME_FB_XLAT_MAP_INDEX(value_g, dst_mask_g, dst->tme_fb_connection_map_g);"])
+ AS_ECHO(["${indent1} pixel |= _TME_FB_XLAT_MAP_INDEX(value_r, dst_mask_r, dst->tme_fb_connection_map_r);"])
+ AS_ECHO(["${indent1} pixel |= _TME_FB_XLAT_MAP_INDEX(value_b, dst_mask_b, dst->tme_fb_connection_map_b);"])
+ AS_ECHO(["${indent1} pixel |= 0xff000000;"])
+ AS_ECHO(["${indent1} }"])
+ AS_ECHO([""])
+ AS_ECHO(["${indent1} /* otherwise, destination intensities are linear: */"])
+ AS_ECHO(["${indent1} else {"])
+ AS_ECHO([""])
+ AS_ECHO(["${indent1} /* form the pixel: */"])
+ AS_ECHO(["${indent1} pixel = _TME_FB_XLAT_MAP_LINEAR(value_g, ${src_mask_i}, dst_mask_g);"])
+ AS_ECHO(["${indent1} pixel |= _TME_FB_XLAT_MAP_LINEAR(value_r, ${src_mask_i}, dst_mask_r);"])
+ AS_ECHO(["${indent1} pixel |= _TME_FB_XLAT_MAP_LINEAR(value_b, ${src_mask_i}, dst_mask_b);"])
+ AS_ECHO(["${indent1} pixel |= 0xff000000;"])
+ AS_ECHO([""])
+ AS_ECHO(["${indent1} /* if destination pixels are indexed: */"])
+ AS_ECHO(["${indent1} if (dst_masks_default) {"])
+ AS_ECHO(["${indent1} pixel = dst->tme_fb_connection_map_pixel[[pixel]];"])
+ AS_ECHO(["${indent1} }"])
+ AS_ECHO(["${indent1} }"])
if test "X${indent1}" != "X${indent0}"; then
- $as_echo "${indent0} }"
+ AS_ECHO(["${indent0} }"])
fi
if test "X${indent0}" != X; then
- $as_echo "${indent0} }"
+ AS_ECHO(["${indent0} }"])
fi
fi
fi
- $as_echo ""
+ AS_ECHO([""])
if test $scale = _h_; then
- $as_echo " /* if we just read the last pixels on these"
- $as_echo " source scanlines: */"
+ AS_ECHO([" /* if we just read the last pixels on these"])
+ AS_ECHO([" source scanlines: */"])
if test `expr ${iter_next} % ${src_unroll}` = 0; then
- $as_echo " if ((src_x +="
- $as_echo " (src_packed"
- $as_echo " ? `expr ${src_unroll} \* 2`"
- $as_echo " : 2))"
- $as_echo " == src_width) {"
+ AS_ECHO([" if ((src_x +="])
+ AS_ECHO([" (src_packed"])
+ AS_ECHO([" ? `expr ${src_unroll} \* 2`"])
+ AS_ECHO([" : 2))"])
+ AS_ECHO([" == src_width) {"])
else
- $as_echo " if (!src_packed"
- $as_echo " && (src_x += 2) == src_width) {"
+ AS_ECHO([" if (!src_packed"])
+ AS_ECHO([" && (src_x += 2) == src_width) {"])
fi
- $as_echo ""
- $as_echo " /* we need to rapidly shift the source FIFOs"
- $as_echo " to skip not only pad bits and undisplayed"
- $as_echo " pixels on the next line, but actually the"
- $as_echo " *entire* next line."
- $as_echo ""
- $as_echo " note that this sounds like when we're done,"
- $as_echo " the bits at the fronts of the FIFOs will be"
- $as_echo " the *first* pixels on the next scanlines."
- $as_echo ""
- $as_echo " but the bits at the fronts of the FIFOs now"
- $as_echo " are the *last* pixels on the current scanlines -"
- $as_echo " they haven't been shifted off yet. so when"
- $as_echo " we're done, we want one pixel's worth of bits"
- $as_echo " in the FIFOs before the first pixel on the"
- $as_echo " next scanlines: */"
- $as_echo ""
- $as_echo " /* calculate the number of bits that we need"
- $as_echo " to shift the source primary FIFO, after"
- $as_echo " discarding any bits in it now: */"
- $as_echo " src_off = ((src_bypl * 8) - (src_width * src_bipp)) + (src_bypl * 8);"
- $as_echo " src_off -= (src_fifo0_may_be_unaligned"
- $as_echo " ? src_fifo0_bits"
- $as_echo " : 32);"
- $as_echo ""
- $as_echo " /* rapidly advance src_raw0 by the number of"
- $as_echo " whole 32-bit words. this will leave it pointing"
- $as_echo " to the 32-bit word that has the first bit that"
- $as_echo " we want to end up as the first bit in the source"
- $as_echo " primary FIFO: */"
- $as_echo " src_raw0 += (src_off / 32);"
- $as_echo ""
- $as_echo " /* reprime the source primary FIFO: */"
- $as_echo " src_fifo0 = *src_raw0;"
- $as_echo " *TME_FB_XLAT_SRC_OLD(src_raw0) = src_fifo0;"
- $as_echo " src_raw0++;"
- $as_echo " src_fifo0 = ((src_order == TME_ENDIAN_BIG)"
- $as_echo " ? tme_betoh_u32(src_fifo0)"
- $as_echo " : tme_letoh_u32(src_fifo0));"
- $as_echo ""
- $as_echo " /* if the source primary FIFO may be unaligned: */"
- $as_echo " if (src_fifo0_may_be_unaligned) {"
- $as_echo ""
- $as_echo " /* reprime the top half of the FIFO, leaving a"
- $as_echo " total of 64 bits in it: */"
- $as_echo " src_fifo0_next = *src_raw0;"
- $as_echo " *TME_FB_XLAT_SRC_OLD(src_raw0) = src_fifo0_next;"
- $as_echo " src_raw0++;"
- $as_echo " src_fifo0_next = ((src_order == TME_ENDIAN_BIG)"
- $as_echo " ? tme_betoh_u32(src_fifo0_next)"
- $as_echo " : tme_letoh_u32(src_fifo0_next));"
- $as_echo " src_fifo0_bits = 64;"
- $as_echo ""
- $as_echo " /* if we have to shift off bits left over"
- $as_echo " from rapidly advancing whole 32-bit words: */"
- $as_echo " src_off %= 32;"
- $as_echo " if (src_off > 0) {"
- $as_echo " TME_FB_XLAT_SHIFT_SRC(TRUE,"
- $as_echo " src_fifo0,"
- $as_echo " src_fifo0_next,"
- $as_echo " src_fifo0_bits,"
- $as_echo " src_off,"
- $as_echo " src_raw0,"
- $as_echo " src_order);"
- $as_echo " }"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* otherwise, the source primary FIFO is always aligned: */"
- $as_echo " else {"
- $as_echo " assert ((src_off % 32) == 0);"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* calculate the number of bits that we need"
- $as_echo " to shift the source secondary FIFO, after"
- $as_echo " discarding any bits in it now: */"
- $as_echo " src_off = ((src_bypl * 8) - (src_width * src_bipp)) + (src_bypl * 8);"
- $as_echo " src_off -= (src_fifo1_may_be_unaligned"
- $as_echo " ? src_fifo1_bits"
- $as_echo " : 32);"
- $as_echo ""
- $as_echo " /* rapidly advance src_raw1 by the number of"
- $as_echo " whole 32-bit words. this will leave it pointing"
- $as_echo " to the 32-bit word that has the first bit that"
- $as_echo " we want to end up as the first bit in the source"
- $as_echo " secondary FIFO: */"
- $as_echo " src_raw1 += (src_off / 32);"
- $as_echo ""
- $as_echo " /* reprime the source secondary FIFO: */"
- $as_echo " src_fifo1 = *src_raw1;"
- $as_echo " *TME_FB_XLAT_SRC_OLD(src_raw1) = src_fifo1;"
- $as_echo " src_raw1++;"
- $as_echo " src_fifo1 = ((src_order == TME_ENDIAN_BIG)"
- $as_echo " ? tme_betoh_u32(src_fifo1)"
- $as_echo " : tme_letoh_u32(src_fifo1));"
- $as_echo ""
- $as_echo " /* if the source secondary FIFO may be unaligned: */"
- $as_echo " if (src_fifo1_may_be_unaligned) {"
- $as_echo ""
- $as_echo " /* reprime the top half of the FIFO, leaving a"
- $as_echo " total of 64 bits in it: */"
- $as_echo " src_fifo1_next = *src_raw1;"
- $as_echo " *TME_FB_XLAT_SRC_OLD(src_raw1) = src_fifo1_next;"
- $as_echo " src_raw1++;"
- $as_echo " src_fifo1_next = ((src_order == TME_ENDIAN_BIG)"
- $as_echo " ? tme_betoh_u32(src_fifo1_next)"
- $as_echo " : tme_letoh_u32(src_fifo1_next));"
- $as_echo " src_fifo1_bits = 64;"
- $as_echo ""
- $as_echo " /* if we have to shift off bits left over"
- $as_echo " from rapidly advancing whole 32-bit words: */"
- $as_echo " src_off %= 32;"
- $as_echo " if (src_off > 0) {"
- $as_echo " TME_FB_XLAT_SHIFT_SRC(TRUE,"
- $as_echo " src_fifo1,"
- $as_echo " src_fifo1_next,"
- $as_echo " src_fifo1_bits,"
- $as_echo " src_off,"
- $as_echo " src_raw1,"
- $as_echo " src_order);"
- $as_echo " }"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* otherwise, the source secondary FIFO is always aligned: */"
- $as_echo " else {"
- $as_echo " assert ((src_off % 32) == 0);"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* we are now on the first pixel of the next scanline: */"
- $as_echo " src_x = 0;"
- $as_echo " }"
+ AS_ECHO([""])
+ AS_ECHO([" /* we need to rapidly shift the source FIFOs"])
+ AS_ECHO([" to skip not only pad bits and undisplayed"])
+ AS_ECHO([" pixels on the next line, but actually the"])
+ AS_ECHO([" *entire* next line."])
+ AS_ECHO([""])
+ AS_ECHO([" note that this sounds like when we're done,"])
+ AS_ECHO([" the bits at the fronts of the FIFOs will be"])
+ AS_ECHO([" the *first* pixels on the next scanlines."])
+ AS_ECHO([""])
+ AS_ECHO([" but the bits at the fronts of the FIFOs now"])
+ AS_ECHO([" are the *last* pixels on the current scanlines -"])
+ AS_ECHO([" they haven't been shifted off yet. so when"])
+ AS_ECHO([" we're done, we want one pixel's worth of bits"])
+ AS_ECHO([" in the FIFOs before the first pixel on the"])
+ AS_ECHO([" next scanlines: */"])
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the number of bits that we need"])
+ AS_ECHO([" to shift the source primary FIFO, after"])
+ AS_ECHO([" discarding any bits in it now: */"])
+ AS_ECHO([" src_off = ((src_bypl * 8) - (src_width * src_bipp)) + (src_bypl * 8);"])
+ AS_ECHO([" src_off -= (src_fifo0_may_be_unaligned"])
+ AS_ECHO([" ? src_fifo0_bits"])
+ AS_ECHO([" : 32);"])
+ AS_ECHO([""])
+ AS_ECHO([" /* rapidly advance src_raw0 by the number of"])
+ AS_ECHO([" whole 32-bit words. this will leave it pointing"])
+ AS_ECHO([" to the 32-bit word that has the first bit that"])
+ AS_ECHO([" we want to end up as the first bit in the source"])
+ AS_ECHO([" primary FIFO: */"])
+ AS_ECHO([" src_raw0 += (src_off / 32);"])
+ AS_ECHO([""])
+ AS_ECHO([" /* reprime the source primary FIFO: */"])
+ AS_ECHO([" src_fifo0 = *src_raw0;"])
+ AS_ECHO([" *TME_FB_XLAT_SRC_OLD(src_raw0) = src_fifo0;"])
+ AS_ECHO([" src_raw0++;"])
+ AS_ECHO([" src_fifo0 = ((src_order == TME_ENDIAN_BIG)"])
+ AS_ECHO([" ? tme_betoh_u32(src_fifo0)"])
+ AS_ECHO([" : tme_letoh_u32(src_fifo0));"])
+ AS_ECHO([""])
+ AS_ECHO([" /* if the source primary FIFO may be unaligned: */"])
+ AS_ECHO([" if (src_fifo0_may_be_unaligned) {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* reprime the top half of the FIFO, leaving a"])
+ AS_ECHO([" total of 64 bits in it: */"])
+ AS_ECHO([" src_fifo0_next = *src_raw0;"])
+ AS_ECHO([" *TME_FB_XLAT_SRC_OLD(src_raw0) = src_fifo0_next;"])
+ AS_ECHO([" src_raw0++;"])
+ AS_ECHO([" src_fifo0_next = ((src_order == TME_ENDIAN_BIG)"])
+ AS_ECHO([" ? tme_betoh_u32(src_fifo0_next)"])
+ AS_ECHO([" : tme_letoh_u32(src_fifo0_next));"])
+ AS_ECHO([" src_fifo0_bits = 64;"])
+ AS_ECHO([""])
+ AS_ECHO([" /* if we have to shift off bits left over"])
+ AS_ECHO([" from rapidly advancing whole 32-bit words: */"])
+ AS_ECHO([" src_off %= 32;"])
+ AS_ECHO([" if (src_off > 0) {"])
+ AS_ECHO([" TME_FB_XLAT_SHIFT_SRC(TRUE,"])
+ AS_ECHO([" src_fifo0,"])
+ AS_ECHO([" src_fifo0_next,"])
+ AS_ECHO([" src_fifo0_bits,"])
+ AS_ECHO([" src_off,"])
+ AS_ECHO([" src_raw0,"])
+ AS_ECHO([" src_order);"])
+ AS_ECHO([" }"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* otherwise, the source primary FIFO is always aligned: */"])
+ AS_ECHO([" else {"])
+ AS_ECHO([" assert ((src_off % 32) == 0);"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the number of bits that we need"])
+ AS_ECHO([" to shift the source secondary FIFO, after"])
+ AS_ECHO([" discarding any bits in it now: */"])
+ AS_ECHO([" src_off = ((src_bypl * 8) - (src_width * src_bipp)) + (src_bypl * 8);"])
+ AS_ECHO([" src_off -= (src_fifo1_may_be_unaligned"])
+ AS_ECHO([" ? src_fifo1_bits"])
+ AS_ECHO([" : 32);"])
+ AS_ECHO([""])
+ AS_ECHO([" /* rapidly advance src_raw1 by the number of"])
+ AS_ECHO([" whole 32-bit words. this will leave it pointing"])
+ AS_ECHO([" to the 32-bit word that has the first bit that"])
+ AS_ECHO([" we want to end up as the first bit in the source"])
+ AS_ECHO([" secondary FIFO: */"])
+ AS_ECHO([" src_raw1 += (src_off / 32);"])
+ AS_ECHO([""])
+ AS_ECHO([" /* reprime the source secondary FIFO: */"])
+ AS_ECHO([" src_fifo1 = *src_raw1;"])
+ AS_ECHO([" *TME_FB_XLAT_SRC_OLD(src_raw1) = src_fifo1;"])
+ AS_ECHO([" src_raw1++;"])
+ AS_ECHO([" src_fifo1 = ((src_order == TME_ENDIAN_BIG)"])
+ AS_ECHO([" ? tme_betoh_u32(src_fifo1)"])
+ AS_ECHO([" : tme_letoh_u32(src_fifo1));"])
+ AS_ECHO([""])
+ AS_ECHO([" /* if the source secondary FIFO may be unaligned: */"])
+ AS_ECHO([" if (src_fifo1_may_be_unaligned) {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* reprime the top half of the FIFO, leaving a"])
+ AS_ECHO([" total of 64 bits in it: */"])
+ AS_ECHO([" src_fifo1_next = *src_raw1;"])
+ AS_ECHO([" *TME_FB_XLAT_SRC_OLD(src_raw1) = src_fifo1_next;"])
+ AS_ECHO([" src_raw1++;"])
+ AS_ECHO([" src_fifo1_next = ((src_order == TME_ENDIAN_BIG)"])
+ AS_ECHO([" ? tme_betoh_u32(src_fifo1_next)"])
+ AS_ECHO([" : tme_letoh_u32(src_fifo1_next));"])
+ AS_ECHO([" src_fifo1_bits = 64;"])
+ AS_ECHO([""])
+ AS_ECHO([" /* if we have to shift off bits left over"])
+ AS_ECHO([" from rapidly advancing whole 32-bit words: */"])
+ AS_ECHO([" src_off %= 32;"])
+ AS_ECHO([" if (src_off > 0) {"])
+ AS_ECHO([" TME_FB_XLAT_SHIFT_SRC(TRUE,"])
+ AS_ECHO([" src_fifo1,"])
+ AS_ECHO([" src_fifo1_next,"])
+ AS_ECHO([" src_fifo1_bits,"])
+ AS_ECHO([" src_off,"])
+ AS_ECHO([" src_raw1,"])
+ AS_ECHO([" src_order);"])
+ AS_ECHO([" }"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* otherwise, the source secondary FIFO is always aligned: */"])
+ AS_ECHO([" else {"])
+ AS_ECHO([" assert ((src_off % 32) == 0);"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* we are now on the first pixel of the next scanline: */"])
+ AS_ECHO([" src_x = 0;"])
+ AS_ECHO([" }"])
else
- $as_echo " /* if the source buffer is not packed, and we just"
- $as_echo " read the last pixel on this source scanline: */"
- $as_echo " if (!src_packed"
- $as_echo " && ++src_x == src_width) {"
- $as_echo ""
- $as_echo " /* calculate the number of bits between the"
- $as_echo " last bit of the last pixel and the first bit"
- $as_echo " of the first displayed pixel on the next"
- $as_echo " scanline. this is equal to the number of"
- $as_echo " pad bits plus bits for undisplayed pixels: */"
- $as_echo " src_off = ((src_bypl * 8) - (src_width * src_bipp));"
- $as_echo ""
- $as_echo " /* while there are bits to shift: */"
- $as_echo " for (; src_off > 0; src_off -= TME_MIN(src_off, 32)) {"
- $as_echo ""
- $as_echo " /* shift the source primary FIFO: */"
- $as_echo " TME_FB_XLAT_SHIFT_SRC(src_fifo0_may_be_unaligned,"
- $as_echo " src_fifo0,"
- $as_echo " src_fifo0_next,"
- $as_echo " src_fifo0_bits,"
- $as_echo " TME_MIN(src_off, 32),"
- $as_echo " src_raw0,"
- $as_echo " src_order);"
- $as_echo " }"
- $as_echo ""
- $as_echo " /* we are now on the first pixel of the next scanline: */"
- $as_echo " src_x = 0;"
- $as_echo " }"
+ AS_ECHO([" /* if the source buffer is not packed, and we just"])
+ AS_ECHO([" read the last pixel on this source scanline: */"])
+ AS_ECHO([" if (!src_packed"])
+ AS_ECHO([" && ++src_x == src_width) {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the number of bits between the"])
+ AS_ECHO([" last bit of the last pixel and the first bit"])
+ AS_ECHO([" of the first displayed pixel on the next"])
+ AS_ECHO([" scanline. this is equal to the number of"])
+ AS_ECHO([" pad bits plus bits for undisplayed pixels: */"])
+ AS_ECHO([" src_off = ((src_bypl * 8) - (src_width * src_bipp));"])
+ AS_ECHO([""])
+ AS_ECHO([" /* while there are bits to shift: */"])
+ AS_ECHO([" for (; src_off > 0; src_off -= TME_MIN(src_off, 32)) {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* shift the source primary FIFO: */"])
+ AS_ECHO([" TME_FB_XLAT_SHIFT_SRC(src_fifo0_may_be_unaligned,"])
+ AS_ECHO([" src_fifo0,"])
+ AS_ECHO([" src_fifo0_next,"])
+ AS_ECHO([" src_fifo0_bits,"])
+ AS_ECHO([" TME_MIN(src_off, 32),"])
+ AS_ECHO([" src_raw0,"])
+ AS_ECHO([" src_order);"])
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* we are now on the first pixel of the next scanline: */"])
+ AS_ECHO([" src_x = 0;"])
+ AS_ECHO([" }"])
fi
if test `expr ${iter_next} % ${src_unroll}` = 0; then
- $as_echo ""
+ AS_ECHO([""])
if test "${src_fifo_shift}" = 32; then
- $as_echo " /* we've just translated another 32-bit word of the"
- $as_echo " source image, so decrement xlat_run: */"
- $as_echo " xlat_run--;"
+ AS_ECHO([" /* we've just translated another 32-bit word of the"])
+ AS_ECHO([" source image, so decrement xlat_run: */"])
+ AS_ECHO([" xlat_run--;"])
else
- $as_echo " /* if we've just finished translating another 32-bit"
- $as_echo " word of the source image, decrement xlat_run: */"
- $as_echo " if (src_fifo0_bits <= 32 + ${src_fifo_shift}) {"
- $as_echo " xlat_run--;"
- $as_echo " }"
+ AS_ECHO([" /* if we've just finished translating another 32-bit"])
+ AS_ECHO([" word of the source image, decrement xlat_run: */"])
+ AS_ECHO([" if (src_fifo0_bits <= 32 + ${src_fifo_shift}) {"])
+ AS_ECHO([" xlat_run--;"])
+ AS_ECHO([" }"])
fi
- $as_echo ""
- $as_echo " /* shift the source primary FIFO: */"
- $as_echo " TME_FB_XLAT_SHIFT_SRC(src_fifo0_may_be_unaligned,"
- $as_echo " src_fifo0,"
- $as_echo " src_fifo0_next,"
- $as_echo " src_fifo0_bits,"
- $as_echo " ${src_fifo_shift},"
- $as_echo " src_raw0,"
- $as_echo " src_order);"
+ AS_ECHO([""])
+ AS_ECHO([" /* shift the source primary FIFO: */"])
+ AS_ECHO([" TME_FB_XLAT_SHIFT_SRC(src_fifo0_may_be_unaligned,"])
+ AS_ECHO([" src_fifo0,"])
+ AS_ECHO([" src_fifo0_next,"])
+ AS_ECHO([" src_fifo0_bits,"])
+ AS_ECHO([" ${src_fifo_shift},"])
+ AS_ECHO([" src_raw0,"])
+ AS_ECHO([" src_order);"])
if test $scale = _h_; then
- $as_echo ""
- $as_echo " /* shift the source secondary FIFO: */"
- $as_echo " TME_FB_XLAT_SHIFT_SRC(src_fifo1_may_be_unaligned,"
- $as_echo " src_fifo1,"
- $as_echo " src_fifo1_next,"
- $as_echo " src_fifo1_bits,"
- $as_echo " ${src_fifo_shift},"
- $as_echo " src_raw1,"
- $as_echo " src_order);"
+ AS_ECHO([""])
+ AS_ECHO([" /* shift the source secondary FIFO: */"])
+ AS_ECHO([" TME_FB_XLAT_SHIFT_SRC(src_fifo1_may_be_unaligned,"])
+ AS_ECHO([" src_fifo1,"])
+ AS_ECHO([" src_fifo1_next,"])
+ AS_ECHO([" src_fifo1_bits,"])
+ AS_ECHO([" ${src_fifo_shift},"])
+ AS_ECHO([" src_raw1,"])
+ AS_ECHO([" src_order);"])
fi
fi
@@ -2371,232 +2371,231 @@ for src_key in ${src_all}; do
dst_shift=`expr ${iter} % ${dst_unroll}`
dst_shift='('`expr ${dst_shift} \* ${dst_iter_scale}`' * dst_bipp)'
- $as_echo ""
- $as_echo " /* put the pixel into the destination primary FIFO: */"
- $as_echo " dst_fifo0 |="
- $as_echo " (pixel"
- $as_echo " << (dst_order == TME_ENDIAN_BIG"
- $as_echo " ? ((32 - dst_bipp) - ${dst_shift})"
- $as_echo " : ${dst_shift}));"
+ AS_ECHO([""])
+ AS_ECHO([" /* put the pixel into the destination primary FIFO: */"])
+ AS_ECHO([" dst_fifo0 |="])
+ AS_ECHO([" (pixel"])
+ AS_ECHO([" << (dst_order == TME_ENDIAN_BIG"])
+ AS_ECHO([" ? ((32 - dst_bipp) - ${dst_shift})"])
+ AS_ECHO([" : ${dst_shift}));"])
if test $scale = _d_; then
- $as_echo ""
- $as_echo " /* put the pixel into the destination secondary FIFO: */"
- $as_echo " dst_fifo1 |="
- $as_echo " (pixel"
- $as_echo " << (dst_order == TME_ENDIAN_BIG"
- $as_echo " ? ((32 - dst_bipp) - ${dst_shift})"
- $as_echo " : ${dst_shift}));"
+ AS_ECHO([""])
+ AS_ECHO([" /* put the pixel into the destination secondary FIFO: */"])
+ AS_ECHO([" dst_fifo1 |="])
+ AS_ECHO([" (pixel"])
+ AS_ECHO([" << (dst_order == TME_ENDIAN_BIG"])
+ AS_ECHO([" ? ((32 - dst_bipp) - ${dst_shift})"])
+ AS_ECHO([" : ${dst_shift}));"])
- $as_echo ""
+ AS_ECHO([""])
if test `expr ${dst_bipp} \>= 24` = 1; then
- $as_echo " /* put the pixel into both FIFOs again. in"
- $as_echo " this case, dst_bipp is known to be ${dst_bipp},"
- $as_echo " meaning the FIFOs cannot entirely take these"
- $as_echo " further pixels, so we need to shift the FIFOs: */"
+ AS_ECHO([" /* put the pixel into both FIFOs again. in"])
+ AS_ECHO([" this case, dst_bipp is known to be ${dst_bipp},"])
+ AS_ECHO([" meaning the FIFOs cannot entirely take these"])
+ AS_ECHO([" further pixels, so we need to shift the FIFOs: */"])
indent0=""
indent1=X
elif test ${dst_bipp} = 0; then
- $as_echo " /* put the pixel into both FIFOs again. if"
- $as_echo " dst_bipp is 24 or greater, the FIFOs can"
- $as_echo " not entirely take these further pixels,"
- $as_echo " so we need to shift the FIFOs: */"
- $as_echo " if (dst_bipp >= 24) {"
+ AS_ECHO([" /* put the pixel into both FIFOs again. if"])
+ AS_ECHO([" dst_bipp is 24 or greater, the FIFOs can"])
+ AS_ECHO([" not entirely take these further pixels,"])
+ AS_ECHO([" so we need to shift the FIFOs: */"])
+ AS_ECHO([" if (dst_bipp >= 24) {"])
indent0=" "
indent1=" "
else
- $as_echo " /* put the pixel into both FIFOs again. in"
- $as_echo " this case, dst_bipp is known to be ${dst_bipp},"
- $as_echo " meaning the FIFOs can take these further pixels"
- $as_echo " without shifting the FIFOs, as long as we shift"
- $as_echo " the pixels one pixel further: */"
+ AS_ECHO([" /* put the pixel into both FIFOs again. in"])
+ AS_ECHO([" this case, dst_bipp is known to be ${dst_bipp},"])
+ AS_ECHO([" meaning the FIFOs can take these further pixels"])
+ AS_ECHO([" without shifting the FIFOs, as long as we shift"])
+ AS_ECHO([" the pixels one pixel further: */"])
indent0=X
indent1=""
fi
if test "X${indent0}" != "XX"; then
- $as_echo "${indent0} TME_FB_XLAT_SHIFT_DST(dst_fifo0_may_be_unaligned,"
- $as_echo "${indent0} dst_fifo0,"
- $as_echo "${indent0} dst_fifo0_next,"
- $as_echo "${indent0} dst_fifo0_bits,"
- $as_echo "${indent0} dst_bipp,"
- $as_echo "${indent0} dst_raw0,"
- $as_echo "${indent0} dst_order);"
- $as_echo "${indent0} TME_FB_XLAT_SHIFT_DST(dst_fifo1_may_be_unaligned,"
- $as_echo "${indent0} dst_fifo1,"
- $as_echo "${indent0} dst_fifo1_next,"
- $as_echo "${indent0} dst_fifo1_bits,"
- $as_echo "${indent0} dst_bipp,"
- $as_echo "${indent0} dst_raw1,"
- $as_echo "${indent0} dst_order);"
- $as_echo ""
- $as_echo "${indent0} /* now that we've shifted by dst_bipp, we can"
- $as_echo "${indent0} put the further pixels exactly where the"
- $as_echo "${indent0} first pixels went in the FIFOs: */"
- $as_echo "${indent0} dst_fifo0 |="
- $as_echo "${indent0} (pixel"
- $as_echo "${indent0} << (dst_order == TME_ENDIAN_BIG"
- $as_echo "${indent0} ? ((32 - dst_bipp) - ${dst_shift})"
- $as_echo "${indent0} : ${dst_shift}));"
- $as_echo "${indent0} dst_fifo1 |="
- $as_echo "${indent0} (pixel"
- $as_echo "${indent0} << (dst_order == TME_ENDIAN_BIG"
- $as_echo "${indent0} ? ((32 - dst_bipp) - ${dst_shift})"
- $as_echo "${indent0} : ${dst_shift}));"
+ AS_ECHO(["${indent0} TME_FB_XLAT_SHIFT_DST(dst_fifo0_may_be_unaligned,"])
+ AS_ECHO(["${indent0} dst_fifo0,"])
+ AS_ECHO(["${indent0} dst_fifo0_next,"])
+ AS_ECHO(["${indent0} dst_fifo0_bits,"])
+ AS_ECHO(["${indent0} dst_bipp,"])
+ AS_ECHO(["${indent0} dst_raw0,"])
+ AS_ECHO(["${indent0} dst_order);"])
+ AS_ECHO(["${indent0} TME_FB_XLAT_SHIFT_DST(dst_fifo1_may_be_unaligned,"])
+ AS_ECHO(["${indent0} dst_fifo1,"])
+ AS_ECHO(["${indent0} dst_fifo1_next,"])
+ AS_ECHO(["${indent0} dst_fifo1_bits,"])
+ AS_ECHO(["${indent0} dst_bipp,"])
+ AS_ECHO(["${indent0} dst_raw1,"])
+ AS_ECHO(["${indent0} dst_order);"])
+ AS_ECHO([""])
+ AS_ECHO(["${indent0} /* now that we've shifted by dst_bipp, we can"])
+ AS_ECHO(["${indent0} put the further pixels exactly where the"])
+ AS_ECHO(["${indent0} first pixels went in the FIFOs: */"])
+ AS_ECHO(["${indent0} dst_fifo0 |="])
+ AS_ECHO(["${indent0} (pixel"])
+ AS_ECHO(["${indent0} << (dst_order == TME_ENDIAN_BIG"])
+ AS_ECHO(["${indent0} ? ((32 - dst_bipp) - ${dst_shift})"])
+ AS_ECHO(["${indent0} : ${dst_shift}));"])
+ AS_ECHO(["${indent0} dst_fifo1 |="])
+ AS_ECHO(["${indent0} (pixel"])
+ AS_ECHO(["${indent0} << (dst_order == TME_ENDIAN_BIG"])
+ AS_ECHO(["${indent0} ? ((32 - dst_bipp) - ${dst_shift})"])
+ AS_ECHO(["${indent0} : ${dst_shift}));"])
fi
if test ${dst_bipp} = 0; then
- $as_echo " }"
- $as_echo ""
- $as_echo " /* otherwise, the FIFOs can take these further pixels,"
- $as_echo " as long as we shift the pixels one pixel further: */"
- $as_echo " else {"
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* otherwise, the FIFOs can take these further pixels,"])
+ AS_ECHO([" as long as we shift the pixels one pixel further: */"])
+ AS_ECHO([" else {"])
fi
if test "X${indent1}" != "XX"; then
- $as_echo "${indent1} dst_fifo0 |="
- $as_echo "${indent1} (pixel"
- $as_echo "${indent1} << (dst_order == TME_ENDIAN_BIG"
- $as_echo "${indent1} ? ((32 - dst_bipp) - (${dst_shift} + dst_bipp))"
- $as_echo "${indent1} : (${dst_shift} + dst_bipp)));"
- $as_echo "${indent1} dst_fifo1 |="
- $as_echo "${indent1} (pixel"
- $as_echo "${indent1} << (dst_order == TME_ENDIAN_BIG"
- $as_echo "${indent1} ? ((32 - dst_bipp) - (${dst_shift} + dst_bipp))"
- $as_echo "${indent1} : (${dst_shift} + dst_bipp)));"
+ AS_ECHO(["${indent1} dst_fifo0 |="])
+ AS_ECHO(["${indent1} (pixel"])
+ AS_ECHO(["${indent1} << (dst_order == TME_ENDIAN_BIG"])
+ AS_ECHO(["${indent1} ? ((32 - dst_bipp) - (${dst_shift} + dst_bipp))"])
+ AS_ECHO(["${indent1} : (${dst_shift} + dst_bipp)));"])
+ AS_ECHO(["${indent1} dst_fifo1 |="])
+ AS_ECHO(["${indent1} (pixel"])
+ AS_ECHO(["${indent1} << (dst_order == TME_ENDIAN_BIG"])
+ AS_ECHO(["${indent1} ? ((32 - dst_bipp) - (${dst_shift} + dst_bipp))"])
+ AS_ECHO(["${indent1} : (${dst_shift} + dst_bipp)));"])
fi
if test ${dst_bipp} = 0; then
- $as_echo " }"
+ AS_ECHO([" }"])
fi
fi
- $as_echo ""
- $as_echo " /* if the destination buffer is not packed, and we just"
- $as_echo " wrote the last pixel on this destination scanline: */"
+ AS_ECHO([""])
+ AS_ECHO([" /* if the destination buffer is not packed, and we just"])
+ AS_ECHO([" wrote the last pixel on this destination scanline: */"])
if test $scale = _d_; then value=2; else value=1; fi
- $as_echo " if (!dst_packed"
- $as_echo " && (dst_x += ${value}) == dst_width) {"
- $as_echo ""
- $as_echo " /* calculate the number of bits between the"
- $as_echo " last bit of the last pixel and the first bit"
- $as_echo " of the first displayed pixel on the next"
- $as_echo " scanline. this is equal to the number of"
- $as_echo " pad bits plus bits for undisplayed pixels: */"
- $as_echo " dst_off = ((dst_bypl * 8) - (dst_width * dst_bipp));"
- $as_echo ""
- $as_echo " /* while there are bits to shift: */"
- $as_echo " for (; dst_off > 0; dst_off -= TME_MIN(dst_off, 32)) {"
- $as_echo ""
- $as_echo " /* shift the destination primary FIFO: */"
- $as_echo " TME_FB_XLAT_SHIFT_DST(dst_fifo0_may_be_unaligned,"
- $as_echo " dst_fifo0,"
- $as_echo " dst_fifo0_next,"
- $as_echo " dst_fifo0_bits,"
- $as_echo " TME_MIN(dst_off, 32),"
- $as_echo " dst_raw0,"
- $as_echo " dst_order);"
+ AS_ECHO([" if (!dst_packed"])
+ AS_ECHO([" && (dst_x += ${value}) == dst_width) {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* calculate the number of bits between the"])
+ AS_ECHO([" last bit of the last pixel and the first bit"])
+ AS_ECHO([" of the first displayed pixel on the next"])
+ AS_ECHO([" scanline. this is equal to the number of"])
+ AS_ECHO([" pad bits plus bits for undisplayed pixels: */"])
+ AS_ECHO([" dst_off = ((dst_bypl * 8) - (dst_width * dst_bipp));"])
+ AS_ECHO([""])
+ AS_ECHO([" /* while there are bits to shift: */"])
+ AS_ECHO([" for (; dst_off > 0; dst_off -= TME_MIN(dst_off, 32)) {"])
+ AS_ECHO([""])
+ AS_ECHO([" /* shift the destination primary FIFO: */"])
+ AS_ECHO([" TME_FB_XLAT_SHIFT_DST(dst_fifo0_may_be_unaligned,"])
+ AS_ECHO([" dst_fifo0,"])
+ AS_ECHO([" dst_fifo0_next,"])
+ AS_ECHO([" dst_fifo0_bits,"])
+ AS_ECHO([" TME_MIN(dst_off, 32),"])
+ AS_ECHO([" dst_raw0,"])
+ AS_ECHO([" dst_order);"])
if test $scale = _d_; then
- $as_echo ""
- $as_echo " /* shift the destination secondary FIFO: */"
- $as_echo " TME_FB_XLAT_SHIFT_DST(dst_fifo1_may_be_unaligned,"
- $as_echo " dst_fifo1,"
- $as_echo " dst_fifo1_next,"
- $as_echo " dst_fifo1_bits,"
- $as_echo " TME_MIN(dst_off, 32),"
- $as_echo " dst_raw1,"
- $as_echo " dst_order);"
+ AS_ECHO([""])
+ AS_ECHO([" /* shift the destination secondary FIFO: */"])
+ AS_ECHO([" TME_FB_XLAT_SHIFT_DST(dst_fifo1_may_be_unaligned,"])
+ AS_ECHO([" dst_fifo1,"])
+ AS_ECHO([" dst_fifo1_next,"])
+ AS_ECHO([" dst_fifo1_bits,"])
+ AS_ECHO([" TME_MIN(dst_off, 32),"])
+ AS_ECHO([" dst_raw1,"])
+ AS_ECHO([" dst_order);"])
fi
- $as_echo " }"
- $as_echo ""
- $as_echo " /* we are now on the first pixel of the next scanline: */"
- $as_echo " dst_x = 0;"
- $as_echo " }"
+ AS_ECHO([" }"])
+ AS_ECHO([""])
+ AS_ECHO([" /* we are now on the first pixel of the next scanline: */"])
+ AS_ECHO([" dst_x = 0;"])
+ AS_ECHO([" }"])
if test `expr ${iter_next} % ${dst_unroll}` = 0; then
- $as_echo ""
- $as_echo " /* shift the destination primary FIFO: */"
- $as_echo " TME_FB_XLAT_SHIFT_DST(dst_fifo0_may_be_unaligned,"
- $as_echo " dst_fifo0,"
- $as_echo " dst_fifo0_next,"
- $as_echo " dst_fifo0_bits,"
- $as_echo " ${dst_fifo_shift},"
- $as_echo " dst_raw0,"
- $as_echo " dst_order);"
+ AS_ECHO([""])
+ AS_ECHO([" /* shift the destination primary FIFO: */"])
+ AS_ECHO([" TME_FB_XLAT_SHIFT_DST(dst_fifo0_may_be_unaligned,"])
+ AS_ECHO([" dst_fifo0,"])
+ AS_ECHO([" dst_fifo0_next,"])
+ AS_ECHO([" dst_fifo0_bits,"])
+ AS_ECHO([" ${dst_fifo_shift},"])
+ AS_ECHO([" dst_raw0,"])
+ AS_ECHO([" dst_order);"])
if test $scale = _d_; then
- $as_echo ""
- $as_echo " /* shift the destination secondary FIFO: */"
- $as_echo " TME_FB_XLAT_SHIFT_DST(dst_fifo1_may_be_unaligned,"
- $as_echo " dst_fifo1,"
- $as_echo " dst_fifo1_next,"
- $as_echo " dst_fifo1_bits,"
- $as_echo " ${dst_fifo_shift},"
- $as_echo " dst_raw1,"
- $as_echo " dst_order);"
+ AS_ECHO([""])
+ AS_ECHO([" /* shift the destination secondary FIFO: */"])
+ AS_ECHO([" TME_FB_XLAT_SHIFT_DST(dst_fifo1_may_be_unaligned,"])
+ AS_ECHO([" dst_fifo1,"])
+ AS_ECHO([" dst_fifo1_next,"])
+ AS_ECHO([" dst_fifo1_bits,"])
+ AS_ECHO([" ${dst_fifo_shift},"])
+ AS_ECHO([" dst_raw1,"])
+ AS_ECHO([" dst_order);"])
fi
fi
iter=${iter_next}
done
- $as_echo ""
- $as_echo " }"
+ AS_ECHO([""])
+ AS_ECHO([" }"])
if test `expr ${iter} % ${dst_unroll}` != 0; then
- $as_echo "$PROG internal error - the last iter did not shift the destination FIFOs ($iter and $dst_unroll)" 1>&2
+ AS_ECHO(["$PROG internal error - the last iter did not shift the destination FIFOs ($iter and $dst_unroll)"]) 1>&2
exit 1
fi
- $as_echo ""
- $as_echo " /* if the destination FIFOs may be unaligned, there"
- $as_echo " may be bits left in the FIFO that we need to flush: */"
- $as_echo " if (dst_fifo0_may_be_unaligned"
- $as_echo " && dst_fifo0_bits > 0) {"
- $as_echo " dst_fifo0 = *dst_raw0;"
- $as_echo " if (dst_order == TME_ENDIAN_BIG) {"
- $as_echo " dst_fifo0_next |= (tme_betoh_u32(dst_fifo0) & (0xffffffff >> dst_fifo0_bits));"
- $as_echo " dst_fifo0_next = tme_htobe_u32(dst_fifo0_next);"
- $as_echo " }"
- $as_echo " else {"
- $as_echo " dst_fifo0_next |= (tme_letoh_u32(dst_fifo0) & (0xffffffff << dst_fifo0_bits));"
- $as_echo " dst_fifo0_next = tme_htole_u32(dst_fifo0_next);"
- $as_echo " }"
- $as_echo " *dst_raw0 = dst_fifo0;"
- $as_echo " }"
+ AS_ECHO([""])
+ AS_ECHO([" /* if the destination FIFOs may be unaligned, there"])
+ AS_ECHO([" may be bits left in the FIFO that we need to flush: */"])
+ AS_ECHO([" if (dst_fifo0_may_be_unaligned"])
+ AS_ECHO([" && dst_fifo0_bits > 0) {"])
+ AS_ECHO([" dst_fifo0 = *dst_raw0;"])
+ AS_ECHO([" if (dst_order == TME_ENDIAN_BIG) {"])
+ AS_ECHO([" dst_fifo0_next |= (tme_betoh_u32(dst_fifo0) & (0xffffffff >> dst_fifo0_bits));"])
+ AS_ECHO([" dst_fifo0_next = tme_htobe_u32(dst_fifo0_next);"])
+ AS_ECHO([" }"])
+ AS_ECHO([" else {"])
+ AS_ECHO([" dst_fifo0_next |= (tme_letoh_u32(dst_fifo0) & (0xffffffff << dst_fifo0_bits));"])
+ AS_ECHO([" dst_fifo0_next = tme_htole_u32(dst_fifo0_next);"])
+ AS_ECHO([" }"])
+ AS_ECHO([" *dst_raw0 = dst_fifo0;"])
+ AS_ECHO([" }"])
if test $scale = _d_; then
- $as_echo " if (dst_fifo1_may_be_unaligned"
- $as_echo " && dst_fifo1_bits > 0) {"
- $as_echo " dst_fifo1 = *dst_raw1;"
- $as_echo " if (dst_order == TME_ENDIAN_BIG) {"
- $as_echo " dst_fifo1_next |= (tme_betoh_u32(dst_fifo1) & (0xffffffff >> dst_fifo1_bits));"
- $as_echo " dst_fifo1_next = tme_htobe_u32(dst_fifo1_next);"
- $as_echo " }"
- $as_echo " else {"
- $as_echo " dst_fifo1_next |= (tme_letoh_u32(dst_fifo1) & (0xffffffff << dst_fifo1_bits));"
- $as_echo " dst_fifo1_next = tme_htole_u32(dst_fifo1_next);"
- $as_echo " }"
- $as_echo " *dst_raw1 = dst_fifo1;"
- $as_echo " }"
+ AS_ECHO([" if (dst_fifo1_may_be_unaligned"])
+ AS_ECHO([" && dst_fifo1_bits > 0) {"])
+ AS_ECHO([" dst_fifo1 = *dst_raw1;"])
+ AS_ECHO([" if (dst_order == TME_ENDIAN_BIG) {"])
+ AS_ECHO([" dst_fifo1_next |= (tme_betoh_u32(dst_fifo1) & (0xffffffff >> dst_fifo1_bits));"])
+ AS_ECHO([" dst_fifo1_next = tme_htobe_u32(dst_fifo1_next);"])
+ AS_ECHO([" }"])
+ AS_ECHO([" else {"])
+ AS_ECHO([" dst_fifo1_next |= (tme_letoh_u32(dst_fifo1) & (0xffffffff << dst_fifo1_bits));"])
+ AS_ECHO([" dst_fifo1_next = tme_htole_u32(dst_fifo1_next);"])
+ AS_ECHO([" }"])
+ AS_ECHO([" *dst_raw1 = dst_fifo1;"])
+ AS_ECHO([" }"])
fi
- $as_echo ""
- $as_echo " /* loop back to compare more 32-bit words: */"
- $as_echo " src_raw0--;"
- $as_echo " }"
+ AS_ECHO([""])
+ AS_ECHO([" /* loop back to compare more 32-bit words: */"])
+ AS_ECHO([" src_raw0--;"])
+ AS_ECHO([" }"])
- $as_echo ""
- $as_echo " /* return nonzero iff we did some translating: */"
- $as_echo " return (xlat_run >= 0);"
+ AS_ECHO([""])
+ AS_ECHO([" /* return nonzero iff we did some translating: */"])
+ AS_ECHO([" return (xlat_run >= 0);"])
- $as_echo ""
+ AS_ECHO([""])
for macro in ${undef_macros}; do
- $as_echo "#undef ${macro}"
+ AS_ECHO(["#undef ${macro}"])
done
- $as_echo "}"
+ AS_ECHO(["}"])
done
done
-$as_echo ""
-$as_echo "/* the xlat function array: */"
-$as_echo "static const struct tme_fb_xlat tme_fb_xlats[[]] = {$xlat_array
-};"
+AS_ECHO([""])
+AS_ECHO(["/* the xlat function array: */"])
+AS_ECHO(["static const struct tme_fb_xlat tme_fb_xlats[[]] = {$xlat_array};"])
# done:
exit 0
--
2.47.0