|
GiNaC
1.6.2
|
00001 00005 /* 00006 * GiNaC Copyright (C) 1999-2011 Johannes Gutenberg University Mainz, Germany 00007 * 00008 * This program is free software; you can redistribute it and/or modify 00009 * it under the terms of the GNU General Public License as published by 00010 * the Free Software Foundation; either version 2 of the License, or 00011 * (at your option) any later version. 00012 * 00013 * This program is distributed in the hope that it will be useful, 00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00016 * GNU General Public License for more details. 00017 * 00018 * You should have received a copy of the GNU General Public License 00019 * along with this program; if not, write to the Free Software 00020 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00021 */ 00022 00023 #ifndef GINAC_COMPILER_H 00024 #define GINAC_COMPILER_H 00025 00026 #ifdef __GNUC__ 00027 #define unlikely(cond) __builtin_expect((cond), 0) 00028 #define likely(cond) __builtin_expect((cond), 1) 00029 #else 00030 #define unlikely(cond) (cond) 00031 #define likely(cond) (cond) 00032 #endif 00033 00034 #ifdef _MSC_VER 00035 #define __func__ __FUNCTION__ 00036 #define __alignof__ __alignof 00037 #endif 00038 00039 #endif // ndef GINAC_COMPILER_DEP_H