/******************************************************************* * * * This software is part of the ast package * * Copyright (c) 1985-2000 AT&T Corp. * * and it may only be used by you under license from * * AT&T Corp. ("AT&T") * * A copy of the Source Code Agreement is available * * at the AT&T Internet web site URL * * * * http://www.research.att.com/sw/license/ast-open.html * * * * If you have copied this software without agreeing * * to the terms of the license you are infringing on * * the license and copyright and are violating * * AT&T's intellectual property rights. * * * * This software was created by the * * Network Services Research Center * * AT&T Labs Research * * Florham Park NJ * * * * Glenn Fowler * * David Korn * * Phong Vo * * * *******************************************************************/ /* : : generated from features/align.c by iffe version 1999-08-11 : : */ #ifndef _def_align_ast #define _def_align_ast 1 typedef unsigned long ALIGN_INTEGRAL; #define ALIGN_CHUNK 8192 #define ALIGN_INTEGRAL long #define ALIGN_INTEGER(x) ((ALIGN_INTEGRAL)(x)) #define ALIGN_POINTER(x) ((char*)(x)) #define ALIGN_ROUND(x,y) ALIGN_POINTER(ALIGN_INTEGER((x)+(y)-1)&~((y)-1)) #define ALIGN_BOUND ALIGN_BOUND2 #define ALIGN_ALIGN(x) ALIGN_ALIGN2(x) #define ALIGN_TRUNC(x) ALIGN_TRUNC2(x) #define ALIGN_BIT1 0x1 #define ALIGN_BOUND1 ALIGN_BOUND2 #define ALIGN_ALIGN1(x) ALIGN_ALIGN2(x) #define ALIGN_TRUNC1(x) ALIGN_TRUNC2(x) #define ALIGN_CLRBIT1(x) ALIGN_POINTER(ALIGN_INTEGER(x)&0xfffffffe) #define ALIGN_SETBIT1(x) ALIGN_POINTER(ALIGN_INTEGER(x)|0x1) #define ALIGN_TSTBIT1(x) ALIGN_POINTER(ALIGN_INTEGER(x)&0x1) #define ALIGN_BIT2 0x2 #define ALIGN_BOUND2 8 #define ALIGN_ALIGN2(x) ALIGN_TRUNC2((x)+7) #define ALIGN_TRUNC2(x) ALIGN_POINTER(ALIGN_INTEGER(x)&0xfffffff8) #define ALIGN_CLRBIT2(x) ALIGN_POINTER(ALIGN_INTEGER(x)&0xfffffffd) #define ALIGN_SETBIT2(x) ALIGN_POINTER(ALIGN_INTEGER(x)|0x2) #define ALIGN_TSTBIT2(x) ALIGN_POINTER(ALIGN_INTEGER(x)&0x2) #endif