Changes in / [0100882:2ad74d8]


Ignore:
Location:
libcfa
Files:
1 deleted
5 edited

Legend:

Unmodified
Added
Removed
  • libcfa/configure

    r0100882 r2ad74d8  
    19601960
    19611961} # ac_fn_cxx_try_link
    1962 
    1963 # ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
    1964 # -------------------------------------------------------
    1965 # Tests whether HEADER exists, giving a warning if it cannot be compiled using
    1966 # the include files in INCLUDES and setting the cache variable VAR
    1967 # accordingly.
    1968 ac_fn_c_check_header_mongrel ()
    1969 {
    1970   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
    1971   if eval \${$3+:} false; then :
    1972   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
    1973 $as_echo_n "checking for $2... " >&6; }
    1974 if eval \${$3+:} false; then :
    1975   $as_echo_n "(cached) " >&6
    1976 fi
    1977 eval ac_res=\$$3
    1978                { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
    1979 $as_echo "$ac_res" >&6; }
    1980 else
    1981   # Is the header compilable?
    1982 { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
    1983 $as_echo_n "checking $2 usability... " >&6; }
    1984 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
    1985 /* end confdefs.h.  */
    1986 $4
    1987 #include <$2>
    1988 _ACEOF
    1989 if ac_fn_c_try_compile "$LINENO"; then :
    1990   ac_header_compiler=yes
    1991 else
    1992   ac_header_compiler=no
    1993 fi
    1994 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
    1995 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
    1996 $as_echo "$ac_header_compiler" >&6; }
    1997 
    1998 # Is the header present?
    1999 { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
    2000 $as_echo_n "checking $2 presence... " >&6; }
    2001 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
    2002 /* end confdefs.h.  */
    2003 #include <$2>
    2004 _ACEOF
    2005 if ac_fn_c_try_cpp "$LINENO"; then :
    2006   ac_header_preproc=yes
    2007 else
    2008   ac_header_preproc=no
    2009 fi
    2010 rm -f conftest.err conftest.i conftest.$ac_ext
    2011 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
    2012 $as_echo "$ac_header_preproc" >&6; }
    2013 
    2014 # So?  What about this header?
    2015 case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
    2016   yes:no: )
    2017     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
    2018 $as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
    2019     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
    2020 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
    2021     ;;
    2022   no:yes:* )
    2023     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
    2024 $as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
    2025     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
    2026 $as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
    2027     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
    2028 $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
    2029     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
    2030 $as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
    2031     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
    2032 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
    2033 ( $as_echo "## --------------------------------------- ##
    2034 ## Report this to cforall@plg.uwaterloo.ca ##
    2035 ## --------------------------------------- ##"
    2036      ) | sed "s/^/$as_me: WARNING:     /" >&2
    2037     ;;
    2038 esac
    2039   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
    2040 $as_echo_n "checking for $2... " >&6; }
    2041 if eval \${$3+:} false; then :
    2042   $as_echo_n "(cached) " >&6
    2043 else
    2044   eval "$3=\$ac_header_compiler"
    2045 fi
    2046 eval ac_res=\$$3
    2047                { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
    2048 $as_echo "$ac_res" >&6; }
    2049 fi
    2050   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
    2051 
    2052 } # ac_fn_c_check_header_mongrel
    20531962cat >config.log <<_ACEOF
    20541963This file contains any messages produced by compilers while
     
    1695016859
    1695116860
    16952 for ac_header in linux/io_uring.h
    16953 do :
    16954   ac_fn_c_check_header_mongrel "$LINENO" "linux/io_uring.h" "ac_cv_header_linux_io_uring_h" "$ac_includes_default"
    16955 if test "x$ac_cv_header_linux_io_uring_h" = xyes; then :
    16956   cat >>confdefs.h <<_ACEOF
    16957 #define HAVE_LINUX_IO_URING_H 1
    16958 _ACEOF
    16959 
    16960 fi
    16961 
    16962 done
    16963 
    16964 
    1696516861ac_config_files="$ac_config_files Makefile src/Makefile prelude/Makefile"
    1696616862
  • libcfa/configure.ac

    r0100882 r2ad74d8  
    118118AC_PROG_MAKE_SET
    119119
    120 AC_CHECK_HEADERS([linux/io_uring.h])
    121 
    122120AC_CONFIG_FILES([
    123121        Makefile
  • libcfa/src/Makefile.am

    r0100882 r2ad74d8  
    4848thread_headers_nosrc = concurrency/invoke.h
    4949thread_headers = concurrency/coroutine.hfa concurrency/thread.hfa concurrency/kernel.hfa concurrency/monitor.hfa concurrency/mutex.hfa
    50 thread_libsrc = concurrency/CtxSwitch-@ARCHITECTURE@.S concurrency/alarm.cfa concurrency/invoke.c concurrency/io.cfa concurrency/preemption.cfa ${thread_headers:.hfa=.cfa}
     50thread_libsrc = concurrency/CtxSwitch-@ARCHITECTURE@.S concurrency/alarm.cfa concurrency/invoke.c concurrency/preemption.cfa ${thread_headers:.hfa=.cfa}
    5151else
    5252headers =
  • libcfa/src/Makefile.in

    r0100882 r2ad74d8  
    164164am__libcfathread_la_SOURCES_DIST =  \
    165165        concurrency/CtxSwitch-@ARCHITECTURE@.S concurrency/alarm.cfa \
    166         concurrency/invoke.c concurrency/io.cfa \
    167         concurrency/preemption.cfa concurrency/coroutine.cfa \
    168         concurrency/thread.cfa concurrency/kernel.cfa \
    169         concurrency/monitor.cfa concurrency/mutex.cfa
     166        concurrency/invoke.c concurrency/preemption.cfa \
     167        concurrency/coroutine.cfa concurrency/thread.cfa \
     168        concurrency/kernel.cfa concurrency/monitor.cfa \
     169        concurrency/mutex.cfa
    170170@BUILDLIB_TRUE@am__objects_3 = concurrency/coroutine.lo \
    171171@BUILDLIB_TRUE@ concurrency/thread.lo concurrency/kernel.lo \
     
    174174@BUILDLIB_TRUE@ concurrency/CtxSwitch-@ARCHITECTURE@.lo \
    175175@BUILDLIB_TRUE@ concurrency/alarm.lo concurrency/invoke.lo \
    176 @BUILDLIB_TRUE@ concurrency/io.lo concurrency/preemption.lo \
    177 @BUILDLIB_TRUE@ $(am__objects_3)
     176@BUILDLIB_TRUE@ concurrency/preemption.lo $(am__objects_3)
    178177am_libcfathread_la_OBJECTS = $(am__objects_4)
    179178libcfathread_la_OBJECTS = $(am_libcfathread_la_OBJECTS)
     
    475474@BUILDLIB_FALSE@thread_headers =
    476475@BUILDLIB_TRUE@thread_headers = concurrency/coroutine.hfa concurrency/thread.hfa concurrency/kernel.hfa concurrency/monitor.hfa concurrency/mutex.hfa
    477 @BUILDLIB_TRUE@thread_libsrc = concurrency/CtxSwitch-@ARCHITECTURE@.S concurrency/alarm.cfa concurrency/invoke.c concurrency/io.cfa concurrency/preemption.cfa ${thread_headers:.hfa=.cfa}
     476@BUILDLIB_TRUE@thread_libsrc = concurrency/CtxSwitch-@ARCHITECTURE@.S concurrency/alarm.cfa concurrency/invoke.c concurrency/preemption.cfa ${thread_headers:.hfa=.cfa}
    478477
    479478#----------------------------------------------------------------------------------------------------------------
     
    609608        concurrency/$(DEPDIR)/$(am__dirstamp)
    610609concurrency/invoke.lo: concurrency/$(am__dirstamp) \
    611         concurrency/$(DEPDIR)/$(am__dirstamp)
    612 concurrency/io.lo: concurrency/$(am__dirstamp) \
    613610        concurrency/$(DEPDIR)/$(am__dirstamp)
    614611concurrency/preemption.lo: concurrency/$(am__dirstamp) \
  • libcfa/src/exception.c

    r0100882 r2ad74d8  
    1010// Created On       : Mon Jun 26 15:13:00 2017
    1111// Last Modified By : Andrew Beach
    12 // Last Modified On : Thr Apr  9 12:20:00 2020
    13 // Update Count     : 17
     12// Last Modified On : Mon Apr 06 14:40:00 2020
     13// Update Count     : 15
    1414//
    1515
     
    2828#include <unwind.h>
    2929#include <bits/debug.hfa>
    30 #include "stdhdr/assert.h"
    3130
    3231// FIX ME: temporary hack to keep ARM build working
     
    217216                struct _Unwind_Context * unwind_context,
    218217                void * stop_param) {
    219         // Verify actions follow the rules we expect.
    220         verify((actions & _UA_CLEANUP_PHASE) && actions & (_UA_FORCE_UNWIND));
    221         verify(!(actions & (_UA_SEARCH_PHASE | _UA_HANDER_FRAME)));
    222 
    223         if ( actions & _UA_END_OF_STACK ) {
    224                 exit(1);
    225         } else {
    226                 return _URC_NO_REASON;
    227         }
     218        if ( actions & _UA_END_OF_STACK  ) exit(1);
     219        if ( actions & _UA_CLEANUP_PHASE ) return _URC_NO_REASON;
     220
     221        return _URC_FATAL_PHASE2_ERROR;
    228222}
    229223
     
    288282                        version, actions, exception_class, unwind_exception, unwind_context);
    289283
    290         // Verify that actions follow the rules we expect.
    291         // This function should never be called at the end of the stack.
    292         verify(!(actions & _UA_END_OF_STACK));
    293         // Either only the search phase flag is set or...
     284        // If we've reached the end of the stack then there is nothing much we can do...
     285        if (actions & _UA_END_OF_STACK) return _URC_END_OF_STACK;
     286
    294287        if (actions & _UA_SEARCH_PHASE) {
    295                 verify(actions == _UA_SEARCH_PHASE);
    296288                __cfaabi_dbg_print_safe(" lookup phase");
    297         // ... we are in clean-up phase.
    298         } else {
    299                 verify(actions & _UA_CLEANUP_PHASE);
     289        }
     290        else if (actions & _UA_CLEANUP_PHASE) {
    300291                __cfaabi_dbg_print_safe(" cleanup phase");
    301                 // We shouldn't be the handler frame during forced unwind.
    302                 if (actions & _UA_HANDLER_FRAME) {
    303                         verify(!(actions & _UA_FORCE_UNWIND));
    304                         __cfaabi_dbg_print_safe(" (handler frame)");
    305                 } else if (actions & _UA_FORCE_UNWIND) {
    306                         __cfaabi_dbg_print_safe(" (force unwind)");
    307                 }
     292        }
     293        // Just in case, probably can't actually happen
     294        else {
     295                printf(" error\n");
     296                return _URC_FATAL_PHASE1_ERROR;
    308297        }
    309298
     
    407396                        // This is only a cleanup handler, ignore it
    408397                        __cfaabi_dbg_print_safe(" no action");
    409                 } else {
     398                } else if (actions & _UA_CLEANUP_PHASE) {
    410399                        // In clean-up phase, no destructors here but this could be the handler.
    411400
     
    445434
    446435#pragma GCC push_options
    447 #pragma GCC optimize("no-toplevel-reorder")
     436#pragma GCC optimize("O0")
    448437
    449438// Try statements are hoisted out see comments for details. While this could probably be unique
Note: See TracChangeset for help on using the changeset viewer.