kmp_error.h

Go to the documentation of this file.
00001 /*
00002  * kmp_error.h -- PTS functions for error checking at runtime.
00003  * $Revision: 42061 $
00004  * $Date: 2013-02-28 16:36:24 -0600 (Thu, 28 Feb 2013) $
00005  */
00006 
00007 /* <copyright>
00008     Copyright (c) 1997-2013 Intel Corporation.  All Rights Reserved.
00009 
00010     Redistribution and use in source and binary forms, with or without
00011     modification, are permitted provided that the following conditions
00012     are met:
00013 
00014       * Redistributions of source code must retain the above copyright
00015         notice, this list of conditions and the following disclaimer.
00016       * Redistributions in binary form must reproduce the above copyright
00017         notice, this list of conditions and the following disclaimer in the
00018         documentation and/or other materials provided with the distribution.
00019       * Neither the name of Intel Corporation nor the names of its
00020         contributors may be used to endorse or promote products derived
00021         from this software without specific prior written permission.
00022 
00023     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
00024     "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
00025     LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
00026     A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
00027     HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
00028     SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
00029     LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
00030     DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
00031     THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
00032     (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
00033     OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00034 
00035 
00036 ------------------------------------------------------------------------
00037 
00038     Portions of this software are protected under the following patents:
00039         U.S. Patent 5,812,852
00040         U.S. Patent 6,792,599
00041         U.S. Patent 7,069,556
00042         U.S. Patent 7,328,433
00043         U.S. Patent 7,500,242
00044 
00045 </copyright> */
00046 
00047 #ifndef KMP_ERROR_H
00048 #define KMP_ERROR_H
00049 
00050 #include "kmp_i18n.h"
00051 
00052 /* ------------------------------------------------------------------------ */
00053 #ifdef __cplusplus
00054     extern "C" {
00055 #endif
00056 
00057 void __kmp_error_construct(  kmp_i18n_id_t id, enum cons_type ct, ident_t const * ident );
00058 void __kmp_error_construct2( kmp_i18n_id_t id, enum cons_type ct, ident_t const * ident, struct cons_data const * cons );
00059 
00060 struct cons_header * __kmp_allocate_cons_stack( int gtid );
00061 void                 __kmp_free_cons_stack( void * ptr );
00062 
00063 void __kmp_push_parallel( int gtid, ident_t const * ident );
00064 void __kmp_push_workshare( int gtid, enum cons_type ct, ident_t const * ident );
00065 void __kmp_push_sync( int gtid, enum cons_type ct, ident_t const * ident, kmp_user_lock_p name );
00066 
00067 void __kmp_check_workshare( int gtid, enum cons_type ct, ident_t const * ident );
00068 void __kmp_check_sync( int gtid, enum cons_type ct, ident_t const * ident, kmp_user_lock_p name );
00069 
00070 void __kmp_pop_parallel( int gtid, ident_t const * ident );
00071 enum cons_type __kmp_pop_workshare( int gtid, enum cons_type ct, ident_t const * ident );
00072 void __kmp_pop_sync( int gtid, enum cons_type ct, ident_t const * ident );
00073 void __kmp_check_barrier( int gtid, enum cons_type ct, ident_t const * ident );
00074 
00075 #ifdef __cplusplus
00076     } // extern "C"
00077 #endif
00078 
00079 #endif // KMP_ERROR_H
00080 

Generated on 25 Aug 2013 for libomp_oss by  doxygen 1.6.1