Changes in / [d5f4613:42a2970]
- Files:
-
- 7 added
- 14 deleted
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/bits/defs.hfa
rd5f4613 r42a2970 10 10 // Created On : Thu Nov 9 13:24:10 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Aug 26 16:22:32202013 // Update Count : 2012 // Last Modified On : Thu Aug 13 22:00:23 2020 13 // Update Count : 19 14 14 // 15 15 … … 49 49 50 50 static inline long long int rdtscl(void) { 51 #if defined( __i386 ) || defined( __x86_64 ) 52 unsigned int lo, hi; 53 __asm__ __volatile__ ("rdtsc" : "=a"(lo), "=d"(hi)); 54 return ( (unsigned long long)lo)|( ((unsigned long long)hi)<<32 ); 55 #elif defined( __aarch64__ ) || defined( __arm__ ) 51 #if defined( __aarch64__ ) 56 52 // https://github.com/google/benchmark/blob/v1.1.0/src/cycleclock.h#L116 57 53 long long int virtual_timer_value; … … 59 55 return virtual_timer_value; 60 56 #else 61 #error unsupported hardware architecture 57 unsigned int lo, hi; 58 __asm__ __volatile__ ("rdtsc" : "=a"(lo), "=d"(hi)); 59 return ( (unsigned long long)lo)|( ((unsigned long long)hi)<<32 ); 62 60 #endif // __ARM_ARCH 63 61 } -
libcfa/src/concurrency/CtxSwitch-arm64.S
rd5f4613 r42a2970 2 2 // Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo 3 3 // 4 // CtxSwitch-arm 64.S --4 // CtxSwitch-arm.S -- 5 5 // 6 6 // Author : Peter A. Buhr 7 7 // Created On : Sun Aug 16 07:50:13 2020 8 8 // Last Modified By : Peter A. Buhr 9 // Last Modified On : Wed Aug 26 16:24:59202010 // Update Count : 2 59 // Last Modified On : Thu Aug 20 18:43:51 2020 10 // Update Count : 24 11 11 // 12 12 … … 26 26 #define SAVE 20 * 8 27 27 28 .file "CtxSwitch-arm 64.S"28 .file "CtxSwitch-arm.S" 29 29 .text 30 30 .align 2 31 31 .global __cfactx_switch 32 .type __cfactx_switch, %function32 .type __cfactx_switch, @function 33 33 __cfactx_switch: 34 34 … … 91 91 .align 2 92 92 .global __cfactx_invoke_stub 93 .type __cfactx_invoke_stub, %function93 .type __cfactx_invoke_stub, @function 94 94 __cfactx_invoke_stub: 95 95 mov x0, x19 // load main as parameter 0 -
libcfa/src/concurrency/kernel.cfa
rd5f4613 r42a2970 10 10 // Created On : Tue Jan 17 12:27:26 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Aug 31 07:08:20 202013 // Update Count : 7112 // Last Modified On : Fri Aug 14 15:23:00 2020 13 // Update Count : 69 14 14 // 15 15 … … 74 74 ) 75 75 76 #elif defined( __arm__ ) 77 #define __x87_store 78 #define __x87_load 79 80 #elif defined( __aarch64__ ) 76 #elif defined( __ARM_ARCH ) 81 77 #define __x87_store \ 82 78 uint32_t __fpcntl[2]; \ … … 97 93 98 94 #else 99 #error un supportedhardware architecture95 #error unknown hardware architecture 100 96 #endif 101 97 -
libcfa/src/concurrency/preemption.cfa
rd5f4613 r42a2970 10 10 // Created On : Mon Jun 5 14:20:42 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Aug 26 16:46:03202013 // Update Count : 5 312 // Last Modified On : Fri Aug 21 13:45:32 2020 13 // Update Count : 52 14 14 // 15 15 … … 56 56 #elif defined( __x86_64 ) 57 57 #define CFA_REG_IP gregs[REG_RIP] 58 #elif defined( __arm__ ) 59 #define CFA_REG_IP arm_pc 60 #elif defined( __aarch64__ ) 58 #elif defined( __ARM_ARCH ) 61 59 #define CFA_REG_IP pc 62 60 #else 63 #error un supportedhardware architecture61 #error unknown hardware architecture 64 62 #endif 65 63 -
libcfa/src/exception.c
rd5f4613 r42a2970 10 10 // Created On : Mon Jun 26 15:13:00 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sat Aug 29 15:52:22202013 // Update Count : 3412 // Last Modified On : Fri Aug 21 11:27:56 2020 13 // Update Count : 29 14 14 // 15 15 … … 18 18 19 19 #include "exception.h" 20 21 // Implementation of the secret header is hardware dependent. 22 #if defined( __x86_64 ) || defined( __i386 ) 23 #elif defined( __ARM_ARCH ) 24 #warning FIX ME: check if anything needed for ARM 25 #else 26 #warning Exception Handling: No known architecture detected. 27 #endif 20 28 21 29 #include <stdlib.h> … … 26 34 #include "stdhdr/assert.h" 27 35 28 #if defined( __ARM_ARCH ) 29 #warning FIX ME: temporary hack to keep ARM build working 36 // FIX ME: temporary hack to keep ARM build working 30 37 #ifndef _URC_FATAL_PHASE1_ERROR 31 38 #define _URC_FATAL_PHASE1_ERROR 3 … … 34 41 #define _URC_FATAL_PHASE2_ERROR 2 35 42 #endif // ! _URC_FATAL_PHASE2_ERROR 36 #endif // __ARM_ARCH37 43 38 44 #include "lsda.h" … … 620 626 621 627 #pragma GCC pop_options 622 623 #elif defined( __ARM_ARCH )624 _Unwind_Reason_Code __gcfa_personality_v0(625 int version,626 _Unwind_Action actions,627 unsigned long long exception_class,628 struct _Unwind_Exception * unwind_exception,629 struct _Unwind_Context * unwind_context) {630 return _URC_CONTINUE_UNWIND;631 }632 633 __attribute__((noinline))634 void __cfaehm_try_terminate(void (*try_block)(),635 void (*catch_block)(int index, exception_t * except),636 __attribute__((unused)) int (*match_block)(exception_t * except)) {637 }638 #else639 #error unsupported hardware architecture640 628 #endif // __x86_64 || __i386 -
src/AST/Print.cpp
rd5f4613 r42a2970 21 21 #include "Type.hpp" 22 22 #include "TypeSubstitution.hpp" 23 #include "CompilationState.h"24 23 25 24 #include "Common/utility.h" // for group_iterate … … 240 239 241 240 if ( node->result ) { 242 if (!deterministic_output) { 243 os << endl << indent << "... with resolved type:" << endl; 244 ++indent; 245 os << indent; 246 node->result->accept( *this ); 247 --indent; 248 } 241 os << endl << indent << "... with resolved type:" << endl; 242 ++indent; 243 os << indent; 244 node->result->accept( *this ); 245 --indent; 249 246 } 250 247 -
src/SynTree/Expression.cc
rd5f4613 r42a2970 30 30 #include "Type.h" // for Type, BasicType, Type::Qualifiers 31 31 #include "TypeSubstitution.h" // for TypeSubstitution 32 #include "CompilationState.h" // for deterministic_output33 32 34 33 #include "GenPoly/Lvalue.h" … … 72 71 73 72 if ( result ) { 74 if (!deterministic_output) { 75 os << std::endl << indent << "with resolved type:" << std::endl; 76 os << (indent+1); 77 result->print( os, indent+1 ); 78 } 73 os << std::endl << indent << "with resolved type:" << std::endl; 74 os << (indent+1); 75 result->print( os, indent+1 ); 79 76 } 80 77 -
tests/literals.cfa
rd5f4613 r42a2970 10 10 // Created On : Sat Sep 9 16:34:38 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sat Aug 29 10:57:56202013 // Update Count : 22 612 // Last Modified On : Thu Aug 20 13:51:12 2020 13 // Update Count : 225 14 14 // 15 15 … … 151 151 -0X0123456789.0123456789P-09; -0X0123456789.0123456789P-09f; -0X0123456789.0123456789P-09l; -0X0123456789.0123456789P-09F; -0X0123456789.0123456789P-09L; 152 152 153 #if defined( __i386 ) || defined( __x86_64 )154 153 #if defined(__GNUC__) && __GNUC_PREREQ(7,0) // gcc version >= 7 155 154 // floating with length, gcc f16/f128x unsupported and no prelude code for any _FloatXXx, so they work by conversion to long double … … 195 194 /* -0x123456789.0123456789P-09F16; */ -0x123456789.0123456789P-09F32; -0x123456789.0123456789P-09F32x; -0x123456789.0123456789P-09F64; -0x123456789.0123456789P-09F64x; -0x123456789.0123456789P-09W; -0x123456789.0123456789P-09F128; -0x123456789.0123456789P-09q; /* -0x123456789.0123456789P-09q; */ 196 195 #endif // __GNUC_PREREQ(7,0) 197 #endif // __i386 ) || __x86_64198 196 199 197 #ifdef __CFA__
Note: See TracChangeset
for help on using the changeset viewer.