00001 /* N O A L I A S . H 00002 * BRL-CAD 00003 * 00004 * Copyright (c) 2004-2006 United States Government as represented by 00005 * the U.S. Army Research Laboratory. 00006 * 00007 * This library is free software; you can redistribute it and/or 00008 * modify it under the terms of the GNU Lesser General Public License 00009 * as published by the Free Software Foundation; either version 2.1 of 00010 * the License, or (at your option) any later version. 00011 * 00012 * This library is distributed in the hope that it will be useful, but 00013 * WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00015 * Library General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public 00018 * License along with this file; see the file named COPYING for more 00019 * information. 00020 */ 00021 /** @addtogroup libbn */ 00022 /*@{*/ 00023 /** @file noalias.h 00024 * 00025 * This header file is intended to be included in front of any 00026 * loop that involves pointers that do not alias each other, 00027 * to permit vectorizing compilers to proceed. 00028 * 00029 * This file contains various definitions which can be safely seen 00030 * by both ANSI and non-ANSI compilers and preprocessors. 00031 * Absolutely NO pragma's can go in this file; they spoil backwards 00032 * compatability with non-ANSI compilers. 00033 * If this file determines that it is being processed by an ANSI 00034 * compiler, or one that is known to accept pragma, then it will include 00035 * the file "noalias-prag.h", which will contain the various 00036 * vendor-specific pragma's. 00037 * 00038 * 00039 * @author David Becker Cray 00040 * @author Michael John Muuss BRL 00041 * 00042 * @par Source 00043 * SECAD/VLD Computing Consortium, Bldg 394 00044 *@n The U. S. Army Ballistic Research Laboratory 00045 *@n Aberdeen Proving Ground, Maryland 21005-5066 00046 * 00047 * @(#)$Header: /cvsroot/brlcad/brlcad/include/noalias.h,v 14.8 2006/09/18 05:24:07 lbutler Exp $ (BRL) 00048 */ 00049 #if __STDC__ 00050 # include "noalias-prag.h" 00051 #else 00052 # if defined(convex) || defined(__convex__) 00053 /*$dir no_recurrence */ 00054 # endif 00055 #endif 00056 /*@}*/ 00057 /* 00058 * Local Variables: 00059 * mode: C 00060 * tab-width: 8 00061 * c-basic-offset: 4 00062 * indent-tabs-mode: t 00063 * End: 00064 * ex: shiftwidth=4 tabstop=8 00065 */ 00066