/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
#if !defined(JAVA2D_NO_MLIB) || defined(MLIB_ADD_SUFF)
#include "vis_AlphaMacros.h"
/***************************************************************/
#define GET_ARGBPRE(i) \
/***************************************************************/
/***************************************************************/
{
height = 1;
}
for (j = 0; j < height; j++) {
i = i0 = 0;
i0 = 1;
}
#pragma pipeloop(0)
}
if (i < width) {
}
}
}
/***************************************************************/
{
if (width < 16) {
for (j = 0; j < height; j++) {
for (i = 0; i < width; i++) {
mlib_u32 a, r, g, b;
b = argb & 0xff;
a = argb >> 24;
dst[4*i] = a;
if (a == 0) a = 255; /* a |= (a - 1) >> 24; */
}
}
return;
}
for (j = 0; j < height; j++) {
i = i0 = 0;
i0 = 1;
}
#pragma pipeloop(0)
}
if (i < width) {
}
}
}
/***************************************************************/
{
vis_write_gsr(0 << 3);
height = 1;
}
for (j = 0; j < height; j++) {
i = i0 = 0;
i0 = 1;
}
#pragma pipeloop(0)
}
if (i < width) {
}
}
}
/***************************************************************/
{
if (width < 16) {
for (j = 0; j < height; j++) {
for (i = 0; i < width; i++) {
mlib_u32 a, r, g, b;
b = argb & 0xff;
a = argb >> 24;
dst[4*i] = a;
}
}
return;
}
vis_write_gsr(0 << 3);
for (j = 0; j < height; j++) {
i = i0 = 0;
i0 = 1;
}
#pragma pipeloop(0)
}
if (i < width) {
}
}
}
/***************************************************************/
{
vis_write_gsr(0 << 3);
height = 1;
}
xorpixel >>= 24;
alphamask >>= 24;
for (j = 0; j < height; j++) {
i = i0 = 0;
if (dstA0 & 0x80) {
}
i0 = 1;
}
#pragma pipeloop(0)
}
if (i < width) {
if (dstA0 & 0x80) {
}
}
}
}
/***************************************************************/
{
height = 1;
}
for (j = 0; j < height; j++) {
i = i0 = 0;
i0 = 1;
}
#pragma pipeloop(0)
}
if (i < width) {
}
}
}
/***************************************************************/
{
mlib_s32 j;
for (j = 0; j < height; j++) {
}
#pragma pipeloop(0)
}
}
}
}
/***************************************************************/
#define BGR_TO_ARGB { \
\
\
\
\
\
}
/***************************************************************/
{
height = 1;
}
for (j = 0; j < height; j++) {
i = i0 = 0;
i0 = 1;
}
#pragma pipeloop(0)
}
for (; i < width; i++) {
}
}
}
/***************************************************************/
{
for (j = 0; j < height; j++) {
dst++;
}
#pragma pipeloop(0)
}
}
}
}
/***************************************************************/
{
if (width < 16) {
for (j = 0; j < height; j++) {
for (i = 0; i < width; i++) {
mlib_s32 a, r, g, b;
b = x & 0xff;
g = (x >> 8) & 0xff;
r = (x >> 16) & 0xff;
a = x >> 24;
r = mul8table[a][r];
g = mul8table[a][g];
b = mul8table[a][b];
}
}
return;
}
height = 1;
}
for (j = 0; j < height; j++) {
i = i0 = 0;
i0 = 1;
}
#pragma pipeloop(0)
}
for (; i < width; i++) {
}
}
}
/***************************************************************/
{
mlib_s32 i, j;
if (width < 16) {
for (j = 0; j < height; j++) {
for (i = 0; i < width; i++) {
mlib_s32 a, r, g, b;
b = x & 0xff;
g = (x >> 8) & 0xff;
r = (x >> 16) & 0xff;
a = x >> 24;
r = mul8table[a][r];
g = mul8table[a][g];
b = mul8table[a][b];
}
}
return;
}
for (j = 0; j < height; j++) {
}
#pragma pipeloop(0)
}
}
}
}
/***************************************************************/
{
if (width < 16) {
for (j = 0; j < height; j++) {
for (i = 0; i < width; i++) {
mlib_s32 a, r, g, b;
if (x < 0) {
b = x & 0xff;
g = (x >> 8) & 0xff;
r = (x >> 16) & 0xff;
a = (mlib_u32)x >> 24;
r = mul8table[a][r];
g = mul8table[a][g];
b = mul8table[a][b];
}
}
}
return;
}
height = 1;
}
for (j = 0; j < height; j++) {
i = i0 = 0;
if (x < 0) {
dst[i] = x;
}
i0 = 1;
}
#pragma pipeloop(0)
}
for (; i < width; i++) {
if (x < 0) {
dst[i] = x;
}
}
}
}
/***************************************************************/
{
if (width < 16) {
for (j = 0; j < height; j++) {
for (i = 0; i < width; i++) {
mlib_s32 a, r, g, b;
if (x < 0) {
b = x & 0xff;
g = (x >> 8) & 0xff;
r = (x >> 16) & 0xff;
a = (mlib_u32)x >> 24;
r = mul8table[a][r];
g = mul8table[a][g];
b = mul8table[a][b];
}
}
}
return;
}
for (j = 0; j < height; j++) {
if (x < 0) {
*dst = x;
}
dst++;
}
#pragma pipeloop(0)
}
if (x < 0) {
*dst = x;
}
}
}
}
/***************************************************************/
{
if (width < 16) {
for (j = 0; j < height; j++) {
for (i = 0; i < width; i++) {
if (x < 0) {
mlib_s32 a, r, g, b;
b = x & 0xff;
g = (x >> 8) & 0xff;
r = (x >> 16) & 0xff;
a = (mlib_u32)x >> 24;
r = mul8table[a][r];
g = mul8table[a][g];
b = mul8table[a][b];
} else {
}
}
}
return;
}
height = 1;
}
for (j = 0; j < height; j++) {
if (x < 0) {
*dst = x;
} else {
}
dst++;
}
#pragma pipeloop(0)
src += 2;
}
if (x < 0) {
*dst = x;
} else {
}
dst++;
}
}
}
/***************************************************************/
{
mlib_s32 i, j;
unsigned int rowBytes;
if (!pixels) continue;
}
}
}
if (bottom > clipBottom) {
bottom = clipBottom;
}
continue;
}
for (j = 0; j < height; j++) {
vis_write_gsr(0 << 3);
dst++;
}
#pragma pipeloop(0)
src += 2;
}
dst++;
}
}
for (j = 0; j < height; j++) {
for (i = 0; i < width; i++) {
}
}
}
}
/***************************************************************/
#endif /* JAVA2D_NO_MLIB */