Changeset 3bbd012
- Timestamp:
- Jul 31, 2018, 2:43:04 PM (6 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, no_list, persistent-indexer, pthread-emulation, qualifiedEnum
- Children:
- 642bc83
- Parents:
- d1e0979 (diff), 04e367c (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - Files:
-
- 10 added
- 70 edited
- 2 moved
Legend:
- Unmodified
- Added
- Removed
-
.gitignore
rd1e0979 r3bbd012 8 8 config.status 9 9 config.log 10 config.py 10 11 stamp-h1 11 12 /Makefile … … 24 25 include 25 26 share 27 build 26 28 *.class 27 29 -
Jenkinsfile
rd1e0979 r3bbd012 174 174 175 175 def notify_server(int wait) { 176 sh """curl -- data "wait=${wait}" -X POST https://cforall.uwaterloo.ca:8082/jenkins/notify > /dev/null || true"""176 sh """curl --silent --show-error --data "wait=${wait}" -X POST https://cforall.uwaterloo.ca:8082/jenkins/notify > /dev/null || true""" 177 177 return 178 178 } … … 260 260 def install_dir = pwd tmp: true 261 261 262 //Output compiler version to help with debug 263 echo """C++ Compiler :""" 264 sh "which ${compiler.cpp_cc} && ${compiler.cpp_cc} --version" 265 echo """C Compiler :""" 266 sh "which ${compiler.cfa_cc} && ${compiler.cfa_cc} --version" 267 268 //Configure the conpilation (Output is not relevant) 269 //Use the current directory as the installation target so nothing escapes the sandbox 270 //Also specify the compiler by hand 271 sh "./configure CXX=${compiler.cpp_cc} ${architecture} --with-backend-compiler=${compiler.cfa_cc} --prefix=${install_dir} --enable-silent-rules --quiet" 272 273 //Compile the project 274 sh 'make -j 8 --no-print-directory V=0 install' 262 // Build outside of the src tree to ease cleaning 263 sh "mkdir -p build" 264 dir ('build') { 265 //Configure the conpilation (Output is not relevant) 266 //Use the current directory as the installation target so nothing escapes the sandbox 267 //Also specify the compiler by hand 268 sh "../configure CXX=${compiler.cpp_cc} ${architecture} --with-backend-compiler=${compiler.cfa_cc} --prefix=${install_dir} --enable-silent-rules --quiet" 269 270 //Compile the project 271 sh 'make -j 8 --no-print-directory' 272 } 275 273 } 276 274 } … … 281 279 //Run the tests from the tests directory 282 280 if ( do_alltests ) { 283 sh 'make -C src/tests all-tests debug=yes --no-print-directory'284 sh 'make -C src/tests all-tests debug=no --no-print-directory'281 sh 'make -C build/src/tests all-tests debug=yes --no-print-directory' 282 sh 'make -C build/src/tests all-tests debug=no --no-print-directory' 285 283 } 286 284 else { 287 sh 'make -C src/tests --no-print-directory'285 sh 'make -C build/src/tests --no-print-directory' 288 286 } 289 287 } … … 296 294 297 295 //Append bench results 298 sh 'make -C src/benchmark --no-print-directory jenkins githash=' + gitRefNewValue + ' arch=' + arch_name + ' | tee bench.json'296 sh 'make -C build/src/benchmark --no-print-directory jenkins githash=' + gitRefNewValue + ' arch=' + arch_name + ' | tee bench.json' 299 297 } 300 298 } … … 302 300 def clean() { 303 301 build_stage('Cleanup') { 304 305 //do a maintainer-clean to make sure we need to remake from scratch 306 sh 'make maintainer-clean > /dev/null' 302 // clean the build by wipping the build directory 303 sh 'rm -rf build' 307 304 } 308 305 } … … 329 326 330 327 //Then publish the results 331 sh 'curl - H \'Content-Type: application/json\' --data @bench.json https://cforall.uwaterloo.ca:8082/jenkins/publish > /dev/null || true'328 sh 'curl --silent --show-error -H \'Content-Type: application/json\' --data @bench.json https://cforall.uwaterloo.ca:8082/jenkins/publish > /dev/null || true' 332 329 } 333 330 } -
Makefile.in
rd1e0979 r3bbd012 170 170 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ 171 171 cscope distdir dist dist-all distcheck 172 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ 173 $(LISP)config.h.in 172 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) 174 173 # Read a list of newline-separated strings from the standard input, 175 174 # and print each of them once, without duplicates. Input order is … … 192 191 CSCOPE = cscope 193 192 DIST_SUBDIRS = $(SUBDIRS) 194 am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \ 195 $(top_srcdir)/automake/compile \ 193 am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/automake/compile \ 196 194 $(top_srcdir)/automake/config.guess \ 197 195 $(top_srcdir)/automake/config.sub \ 198 196 $(top_srcdir)/automake/install-sh \ 199 $(top_srcdir)/automake/missing INSTALL README automake/compile \ 200 automake/config.guess automake/config.sub automake/depcomp \ 201 automake/install-sh automake/missing automake/ylwrap 197 $(top_srcdir)/automake/missing $(top_srcdir)/src/config.h.in \ 198 INSTALL README automake/compile automake/config.guess \ 199 automake/config.sub automake/depcomp automake/install-sh \ 200 automake/missing automake/ylwrap 202 201 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) 203 202 distdir = $(PACKAGE)-$(VERSION) … … 291 290 LTLIBOBJS = @LTLIBOBJS@ 292 291 MACHINE_TYPE = @MACHINE_TYPE@ 293 MAINT = @MAINT@294 292 MAKEINFO = @MAKEINFO@ 295 293 MKDIR_P = @MKDIR_P@ … … 373 371 am--refresh: Makefile 374 372 @: 375 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@$(srcdir)/Makefile.am $(am__configure_deps)373 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) 376 374 @for dep in $?; do \ 377 375 case '$(am__configure_deps)' in \ … … 399 397 $(SHELL) ./config.status --recheck 400 398 401 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@$(am__configure_deps)399 $(top_srcdir)/configure: $(am__configure_deps) 402 400 $(am__cd) $(srcdir) && $(AUTOCONF) 403 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@$(am__aclocal_m4_deps)401 $(ACLOCAL_M4): $(am__aclocal_m4_deps) 404 402 $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) 405 403 $(am__aclocal_m4_deps): … … 409 407 @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 410 408 411 stamp-h1: $( srcdir)/config.h.in $(top_builddir)/config.status409 stamp-h1: $(top_srcdir)/src/config.h.in $(top_builddir)/config.status 412 410 @rm -f stamp-h1 413 411 cd $(top_builddir) && $(SHELL) ./config.status config.h 414 $( srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@$(am__configure_deps)412 $(top_srcdir)/src/config.h.in: $(am__configure_deps) 415 413 ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) 416 414 rm -f stamp-h1 -
aclocal.m4
rd1e0979 r3bbd012 703 703 AC_SUBST([am__leading_dot])]) 704 704 705 # Add --enable-maintainer-mode option to configure. -*- Autoconf -*-706 # From Jim Meyering707 708 # Copyright (C) 1996-2014 Free Software Foundation, Inc.709 #710 # This file is free software; the Free Software Foundation711 # gives unlimited permission to copy and/or distribute it,712 # with or without modifications, as long as this notice is preserved.713 714 # AM_MAINTAINER_MODE([DEFAULT-MODE])715 # ----------------------------------716 # Control maintainer-specific portions of Makefiles.717 # Default is to disable them, unless 'enable' is passed literally.718 # For symmetry, 'disable' may be passed as well. Anyway, the user719 # can override the default with the --enable/--disable switch.720 AC_DEFUN([AM_MAINTAINER_MODE],721 [m4_case(m4_default([$1], [disable]),722 [enable], [m4_define([am_maintainer_other], [disable])],723 [disable], [m4_define([am_maintainer_other], [enable])],724 [m4_define([am_maintainer_other], [enable])725 m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])726 AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])727 dnl maintainer-mode's default is 'disable' unless 'enable' is passed728 AC_ARG_ENABLE([maintainer-mode],729 [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],730 am_maintainer_other[ make rules and dependencies not useful731 (and sometimes confusing) to the casual installer])],732 [USE_MAINTAINER_MODE=$enableval],733 [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))734 AC_MSG_RESULT([$USE_MAINTAINER_MODE])735 AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])736 MAINT=$MAINTAINER_MODE_TRUE737 AC_SUBST([MAINT])dnl738 ]739 )740 741 705 # Check to see how 'make' treats includes. -*- Autoconf -*- 742 706 -
configure
rd1e0979 r3bbd012 691 691 BACKEND_CC 692 692 CFA_NAME 693 MAINT694 MAINTAINER_MODE_FALSE695 MAINTAINER_MODE_TRUE696 693 am__untar 697 694 am__tar … … 764 761 enable_option_checking 765 762 enable_silent_rules 766 enable_maintainer_mode767 763 with_cfa_name 768 764 with_backend_compiler … … 1419 1415 --enable-silent-rules less verbose build output (undo: "make V=1") 1420 1416 --disable-silent-rules verbose build output (undo: "make V=0") 1421 --disable-maintainer-mode1422 disable make rules and dependencies not useful (and1423 sometimes confusing) to the casual installer1424 1417 --enable-target-release Build and install the release target 1425 1418 --enable-target-debug Build and install the debug target … … 2492 2485 2493 2486 #AC_CONFIG_SRCDIR([src/main.cc]) 2494 ac_config_headers="$ac_config_headers config.h "2487 ac_config_headers="$ac_config_headers config.h:src/config.h.in" 2495 2488 2496 2489 # Check whether --enable-silent-rules was given. … … 3074 3067 fi 3075 3068 3076 3077 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&53078 $as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }3079 # Check whether --enable-maintainer-mode was given.3080 if test "${enable_maintainer_mode+set}" = set; then :3081 enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval3082 else3083 USE_MAINTAINER_MODE=yes3084 fi3085 3086 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&53087 $as_echo "$USE_MAINTAINER_MODE" >&6; }3088 if test $USE_MAINTAINER_MODE = yes; then3089 MAINTAINER_MODE_TRUE=3090 MAINTAINER_MODE_FALSE='#'3091 else3092 MAINTAINER_MODE_TRUE='#'3093 MAINTAINER_MODE_FALSE=3094 fi3095 3096 MAINT=$MAINTAINER_MODE_TRUE3097 3098 # may require auto* software to be installed3099 3069 3100 3070 # Allow program name tansformation … … 6295 6265 6296 6266 6267 ac_config_links="$ac_config_links src/tests/test.py:src/tests/test.py" 6268 6269 6270 ac_config_files="$ac_config_files src/tests/config.py" 6271 6297 6272 cat >confcache <<\_ACEOF 6298 6273 # This file is a shell script that caches the results of configure … … 6420 6395 fi 6421 6396 6422 if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then6423 as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.6424 Usually this means the macro was only invoked conditionally." "$LINENO" 56425 fi6426 6397 if test -z "${BUILD_RELEASE_TRUE}" && test -z "${BUILD_RELEASE_FALSE}"; then 6427 6398 as_fn_error $? "conditional \"BUILD_RELEASE\" was never defined. … … 6880 6851 config_files="$ac_config_files" 6881 6852 config_headers="$ac_config_headers" 6853 config_links="$ac_config_links" 6882 6854 config_commands="$ac_config_commands" 6883 6855 … … 6909 6881 Configuration headers: 6910 6882 $config_headers 6883 6884 Configuration links: 6885 $config_links 6911 6886 6912 6887 Configuration commands: … … 7048 7023 do 7049 7024 case $ac_config_target in 7050 "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h " ;;7025 "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h:src/config.h.in" ;; 7051 7026 "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; 7052 7027 "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; … … 7061 7036 "tools/Makefile") CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;; 7062 7037 "tools/prettyprinter/Makefile") CONFIG_FILES="$CONFIG_FILES tools/prettyprinter/Makefile" ;; 7038 "src/tests/test.py") CONFIG_LINKS="$CONFIG_LINKS src/tests/test.py:src/tests/test.py" ;; 7039 "src/tests/config.py") CONFIG_FILES="$CONFIG_FILES src/tests/config.py" ;; 7063 7040 7064 7041 *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; … … 7074 7051 test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files 7075 7052 test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers 7053 test "${CONFIG_LINKS+set}" = set || CONFIG_LINKS=$config_links 7076 7054 test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands 7077 7055 fi … … 7371 7349 7372 7350 7373 eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"7351 eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :L $CONFIG_LINKS :C $CONFIG_COMMANDS" 7374 7352 shift 7375 7353 for ac_tag … … 7648 7626 s/.*/./; q'`/stamp-h$_am_stamp_count 7649 7627 ;; 7650 7628 :L) 7629 # 7630 # CONFIG_LINK 7631 # 7632 7633 if test "$ac_source" = "$ac_file" && test "$srcdir" = '.'; then 7634 : 7635 else 7636 # Prefer the file from the source tree if names are identical. 7637 if test "$ac_source" = "$ac_file" || test ! -r "$ac_source"; then 7638 ac_source=$srcdir/$ac_source 7639 fi 7640 7641 { $as_echo "$as_me:${as_lineno-$LINENO}: linking $ac_source to $ac_file" >&5 7642 $as_echo "$as_me: linking $ac_source to $ac_file" >&6;} 7643 7644 if test ! -r "$ac_source"; then 7645 as_fn_error $? "$ac_source: file not found" "$LINENO" 5 7646 fi 7647 rm -f "$ac_file" 7648 7649 # Try a relative symlink, then a hard link, then a copy. 7650 case $ac_source in 7651 [\\/$]* | ?:[\\/]* ) ac_rel_source=$ac_source ;; 7652 *) ac_rel_source=$ac_top_build_prefix$ac_source ;; 7653 esac 7654 ln -s "$ac_rel_source" "$ac_file" 2>/dev/null || 7655 ln "$ac_source" "$ac_file" 2>/dev/null || 7656 cp -p "$ac_source" "$ac_file" || 7657 as_fn_error $? "cannot link or copy $ac_source to $ac_file" "$LINENO" 5 7658 fi 7659 ;; 7651 7660 :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 7652 7661 $as_echo "$as_me: executing $ac_file commands" >&6;} -
configure.ac
rd1e0979 r3bbd012 6 6 AC_CONFIG_AUX_DIR([automake]) 7 7 #AC_CONFIG_SRCDIR([src/main.cc]) 8 AC_CONFIG_HEADERS([config.h ])8 AC_CONFIG_HEADERS([config.h:src/config.h.in]) 9 9 AM_SILENT_RULES([no]) 10 10 11 11 AM_INIT_AUTOMAKE([subdir-objects]) 12 AM_MAINTAINER_MODE(enable) # may require auto* software to be installed13 12 14 13 # Allow program name tansformation … … 251 250 ]) 252 251 253 AC_OUTPUT 252 AC_CONFIG_LINKS([src/tests/test.py:src/tests/test.py]) 253 254 AC_OUTPUT(src/tests/config.py) 254 255 255 256 AM_COND_IF([BUILD_RELEASE], -
doc/bibliography/pl.bib
rd1e0979 r3bbd012 3355 3355 pages = {115-138}, 3356 3356 year = 1971, 3357 } 3358 3359 @article{Hesselink17, 3360 keywords = {concurrency, mutual exclusion, performance experiment, software solutions}, 3361 title = {High-Contention Mutual Exclusion by Elevator Algorithms}, 3362 author = {Peter Buhr and David Dice and Wim H. Hesselink}, 3363 journal = ccpe, 3364 volumeopt = 30, 3365 numberopt = 4, 3366 year = 2018, 3367 month = may, 3368 publisher = {John Wiley \& Sons}, 3369 note = {\url{https://doi-org.proxy.lib.uwaterloo.ca/10.1002/cpe.4475}} 3357 3370 } 3358 3371 -
doc/user/Makefile
rd1e0979 r3bbd012 51 51 # File Dependencies # 52 52 53 build/version: ../../configure | ${Build} 54 ../../configure --version | grep "cfa-cc configure" | grep -oEe "([0-9]+\.)+[0-9]+" > $@ 55 53 56 ${DOCUMENT} : ${BASE}.ps 54 57 ps2pdf $< … … 58 61 59 62 ${BASE}.dvi : Makefile ${GRAPHS} ${PROGRAMS} ${PICTURES} ${FIGURES} ${SOURCES} \ 60 ${Macros}/common.tex ${Macros}/lstlang.sty ${Macros}/indexstyle ../bibliography/pl.bib | ${Build}63 ${Macros}/common.tex ${Macros}/lstlang.sty ${Macros}/indexstyle ../bibliography/pl.bib build/version | ${Build} 61 64 # Conditionally create an empty *.ind (index) file for inclusion until makeindex is run. 62 65 if [ ! -r ${basename $@}.ind ] ; then touch ${Build}/${basename $@}.ind ; fi -
doc/user/user.tex
rd1e0979 r3bbd012 1 1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -*- Mode: Latex -*- %%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 %% 2 %% 3 3 %% Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo 4 4 %% 5 5 %% The contents of this file are covered under the licence agreement in the 6 6 %% file "LICENCE" distributed with Cforall. 7 %% 8 %% user.tex -- 9 %% 7 %% 8 %% user.tex -- 9 %% 10 10 %% Author : Peter A. Buhr 11 11 %% Created On : Wed Apr 6 14:53:29 2016 … … 72 72 73 73 % Names used in the document. 74 \newcommand{\Version}{\input{ ../../version}}74 \newcommand{\Version}{\input{build/version}} 75 75 \newcommand{\Textbf}[2][red]{{\color{#1}{\textbf{#2}}}} 76 76 \newcommand{\Emph}[2][red]{{\color{#1}\textbf{\emph{#2}}}} … … 430 430 #endif 431 431 \end{cfa} 432 which conditionally includes the correct header file, if the program is compiled using \Indexc{gcc} or \Indexc{cfa}. 432 which conditionally includes the correct header file, if the program is compiled using \Indexc{gcc} or \Indexc{cfa}. 433 433 434 434 … … 1447 1447 \end{cfa} 1448 1448 Algol68 infers the following dereferencing ©*p2 = *p1 + x©, because adding the arbitrary integer value in ©x© to the address of ©p1© and storing the resulting address into ©p2© is an unlikely operation. 1449 Unfortunately, automatic dereferencing does not work in all cases, and so some mechanism is necessary to fix incorrect choices. 1449 Unfortunately, automatic dereferencing does not work in all cases, and so some mechanism is necessary to fix incorrect choices. 1450 1450 1451 1451 Rather than inferring dereference, most programming languages pick one implicit dereferencing semantics, and the programmer explicitly indicates the other to resolve address-duality. … … 2282 2282 struct T t; 2283 2283 } s; 2284 2284 2285 2285 2286 2286 … … 2354 2354 } 2355 2355 \end{cfa} 2356 because 2356 because 2357 2357 2358 2358 Currently, there are no \Index{lambda} expressions, \ie unnamed routines because routine names are very important to properly select the correct routine. … … 3394 3394 sout | sepDisable | 1 | 2 | 3 | endl; // globally turn off implicit separator 3395 3395 sout | sepEnable | 1 | 2 | 3 | endl; // globally turn on implicit separator 3396 3396 3397 3397 sout | 1 | sepOff | 2 | 3 | endl; // locally turn on implicit separator 3398 3398 sout | sepDisable | 1 | sepOn | 2 | 3 | endl; // globally turn off implicit separator -
src/Common/SemanticError.h
rd1e0979 r3bbd012 10 10 // Created On : Mon May 18 07:44:20 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed May 16 15:01:23201813 // Update Count : 3 012 // Last Modified On : Thu Jul 19 10:09:17 2018 13 // Update Count : 31 14 14 // 15 15 … … 57 57 {"qualifiers-zero_t-one_t", "questionable use of type qualifier %s with %s", Severity::Warn}, 58 58 {"aggregate-forward-decl" , "forward declaration of nested aggregate: %s" , Severity::Warn}, 59 {"superfluous-decl" , "declaration does not allocate storage: %s" , Severity::Warn}, 60 {"gcc-attributes" , "invalid attribute: %s" , Severity::Warn}, 59 61 }; 60 62 … … 64 66 BadQualifiersZeroOne, 65 67 AggrForwardDecl, 66 NUMBER_OF_WARNINGS, //This MUST be the last warning 68 SuperfluousDecl, 69 GccAttributes, 70 NUMBER_OF_WARNINGS, // This MUST be the last warning 67 71 }; 68 72 -
src/Common/module.mk
rd1e0979 r3bbd012 19 19 Common/DebugMalloc.cc \ 20 20 Common/Assert.cc \ 21 Common/Heap.cc 21 Common/Heap.cc \ 22 Common/Eval.cc -
src/Common/utility.h
rd1e0979 r3bbd012 31 31 #include "Common/Indenter.h" 32 32 33 class Expression; 34 33 35 template< typename T > 34 36 static inline T * maybeClone( const T *orig ) { … … 456 458 } // ilog2 457 459 460 // ----------------------------------------------------------------------------- 461 /// evaluates expr as a long long int. If second is false, expr could not be evaluated 462 std::pair<long long int, bool> eval(Expression * expr); 458 463 459 464 // Local Variables: // -
src/InitTweak/FixGlobalInit.cc
rd1e0979 r3bbd012 37 37 class GlobalFixer : public WithShortCircuiting { 38 38 public: 39 GlobalFixer( const std::string & name,bool inLibrary );39 GlobalFixer( bool inLibrary ); 40 40 41 41 void previsit( ObjectDecl *objDecl ); … … 52 52 }; 53 53 54 void fixGlobalInit( std::list< Declaration * > & translationUnit, const std::string & name,bool inLibrary ) {55 PassVisitor<GlobalFixer> visitor( name,inLibrary );54 void fixGlobalInit( std::list< Declaration * > & translationUnit, bool inLibrary ) { 55 PassVisitor<GlobalFixer> visitor( inLibrary ); 56 56 acceptAll( translationUnit, visitor ); 57 57 GlobalFixer & fixer = visitor.pass; … … 70 70 } 71 71 72 std::string globalFunctionName( const std::string & name ) { 73 // get basename 74 std::string ret = name.substr( 0, name.find( '.' ) ); 75 // replace invalid characters with _ 76 static std::string invalid = "/-"; 77 replace_if( ret.begin(), ret.end(), []( char c ) { return invalid.find(c) != std::string::npos; }, '_' ); 78 return ret; 79 } 80 81 GlobalFixer::GlobalFixer( const std::string & name, bool inLibrary ) : tempNamer( "_global_init" ) { 82 std::string fixedName = globalFunctionName( name ); 72 GlobalFixer::GlobalFixer( bool inLibrary ) : tempNamer( "_global_init" ) { 83 73 std::list< Expression * > ctorParameters; 84 74 std::list< Expression * > dtorParameters; … … 90 80 // for library code are run before constructors and destructors for user code, 91 81 // specify a priority when building the library. Priorities 0-100 are reserved by gcc. 92 ctorParameters.push_back( new ConstantExpr( Constant::from_int( 102 ) ) ); 93 dtorParameters.push_back( new ConstantExpr( Constant::from_int( 102 ) ) ); 82 // Priorities 101-200 are reserved by cfa, so use priority 200 for CFA library globals, 83 // allowing room for overriding with a higher priority. 84 ctorParameters.push_back( new ConstantExpr( Constant::from_int( 200 ) ) ); 85 dtorParameters.push_back( new ConstantExpr( Constant::from_int( 200 ) ) ); 94 86 } 95 initFunction = new FunctionDecl( "_ init_" + fixedName, Type::StorageClasses( Type::Static ), LinkageSpec::C, new FunctionType( Type::Qualifiers(), false ), new CompoundStmt() );87 initFunction = new FunctionDecl( "__global_init__", Type::StorageClasses( Type::Static ), LinkageSpec::C, new FunctionType( Type::Qualifiers(), false ), new CompoundStmt() ); 96 88 initFunction->get_attributes().push_back( new Attribute( "constructor", ctorParameters ) ); 97 destroyFunction = new FunctionDecl( "_ destroy_" + fixedName, Type::StorageClasses( Type::Static ), LinkageSpec::C, new FunctionType( Type::Qualifiers(), false ), new CompoundStmt() );89 destroyFunction = new FunctionDecl( "__global_destroy__", Type::StorageClasses( Type::Static ), LinkageSpec::C, new FunctionType( Type::Qualifiers(), false ), new CompoundStmt() ); 98 90 destroyFunction->get_attributes().push_back( new Attribute( "destructor", dtorParameters ) ); 99 91 } … … 110 102 if ( ConstructorInit * ctorInit = dynamic_cast< ConstructorInit * >( objDecl->get_init() ) ) { 111 103 // a decision should have been made by the resolver, so ctor and init are not both non-NULL 112 assert( ! ctorInit-> get_ctor() || ! ctorInit->get_init());104 assert( ! ctorInit->ctor || ! ctorInit->init ); 113 105 114 Statement * dtor = ctorInit-> get_dtor();106 Statement * dtor = ctorInit->dtor; 115 107 if ( dtor && ! isIntrinsicSingleArgCallStmt( dtor ) ) { 116 108 // don't need to call intrinsic dtor, because it does nothing, but 117 109 // non-intrinsic dtors must be called 118 110 destroyStatements.push_front( dtor ); 119 ctorInit-> set_dtor( NULL );111 ctorInit->dtor = nullptr; 120 112 } // if 121 if ( Statement * ctor = ctorInit-> get_ctor()) {113 if ( Statement * ctor = ctorInit->ctor ) { 122 114 initStatements.push_back( ctor ); 123 objDecl-> set_init( NULL );124 ctorInit-> set_ctor( NULL );125 } else if ( Initializer * init = ctorInit-> get_init()) {126 objDecl-> set_init( init );127 ctorInit-> set_init( NULL );115 objDecl->init = nullptr; 116 ctorInit->ctor = nullptr; 117 } else if ( Initializer * init = ctorInit->init ) { 118 objDecl->init = init; 119 ctorInit->init = nullptr; 128 120 } else { 129 121 // no constructor and no initializer, which is okay 130 objDecl-> set_init( NULL );122 objDecl->init = nullptr; 131 123 } // if 132 124 delete ctorInit; -
src/InitTweak/FixGlobalInit.h
rd1e0979 r3bbd012 22 22 23 23 namespace InitTweak { 24 /// Moves global initialization into an _init function that is unique to the translation unit. 25 /// Sets the priority of the initialization function depending on whether the initialization 26 /// function is for library code. 27 void fixGlobalInit( std::list< Declaration * > & translationUnit, const std::string & name, bool inLibrary ); 28 29 /// Apply transformations to a file name to get a valid C identifier which will be used as 30 /// the name of the generated initializer function. 31 std::string globalFunctionName( const std::string & name ); 24 /// Moves global initialization into an _init function that is unique to the translation unit. 25 /// Sets the priority of the initialization function depending on whether the initialization 26 /// function is for library code. 27 void fixGlobalInit( std::list< Declaration * > & translationUnit, bool inLibrary ); 32 28 } // namespace 33 29 -
src/InitTweak/FixInit.cc
rd1e0979 r3bbd012 238 238 } // namespace 239 239 240 void fix( std::list< Declaration * > & translationUnit, const std::string & filename,bool inLibrary ) {240 void fix( std::list< Declaration * > & translationUnit, bool inLibrary ) { 241 241 PassVisitor<SelfAssignChecker> checker; 242 242 acceptAll( translationUnit, checker ); 243 243 244 244 // fixes ConstructorInit for global variables. should happen before fixInitializers. 245 InitTweak::fixGlobalInit( translationUnit, filename,inLibrary );245 InitTweak::fixGlobalInit( translationUnit, inLibrary ); 246 246 247 247 UnqCount unqCount; -
src/InitTweak/FixInit.h
rd1e0979 r3bbd012 24 24 /// replace constructor initializers with expression statements 25 25 /// and unwrap basic C-style initializers 26 void fix( std::list< Declaration * > & translationUnit, const std::string & name,bool inLibrary );26 void fix( std::list< Declaration * > & translationUnit, bool inLibrary ); 27 27 } // namespace 28 28 -
src/InitTweak/InitTweak.cc
rd1e0979 r3bbd012 408 408 return allofCtorDtor( stmt, []( Expression * callExpr ){ 409 409 if ( ApplicationExpr * appExpr = isIntrinsicCallExpr( callExpr ) ) { 410 FunctionType *funcType = GenPoly::getFunctionType( appExpr-> get_function()->get_result());410 FunctionType *funcType = GenPoly::getFunctionType( appExpr->function->result ); 411 411 assert( funcType ); 412 412 return funcType->get_parameters().size() == 1; -
src/Makefile.am
rd1e0979 r3bbd012 19 19 20 20 SRC = main.cc \ 21 MakeLibCfa.cc 21 MakeLibCfa.cc \ 22 CompilationState.cc 22 23 23 24 MAINTAINERCLEANFILES = … … 37 38 include SynTree/module.mk 38 39 include Tuples/module.mk 40 include Validate/module.mk 39 41 include Virtual/module.mk 40 42 … … 45 47 driver_cfa_cpp_SOURCES = ${SRC} 46 48 driver_cfa_cpp_LDADD = -ldl # yywrap 47 driver_cfa_cpp_CXXFLAGS = -Wno-deprecated -Wall -Wextra -DDEBUG_ALL -I ${abs_top_srcdir}/src/include -DYY_NO_INPUT -O2 -g -std=c++1449 driver_cfa_cpp_CXXFLAGS = -Wno-deprecated -Wall -Wextra -DDEBUG_ALL -I./Parser -I${abs_top_srcdir}/src/Parser -I${abs_top_srcdir}/src/include -DYY_NO_INPUT -O2 -g -std=c++14 48 50 driver_cfa_cpp_LDFLAGS = -Xlinker -export-dynamic 49 51 … … 91 93 SynTree/Attribute.cc \ 92 94 SynTree/DeclReplacer.cc \ 95 CompilationState.cc \ 93 96 CodeGen/CodeGenerator.cc \ 94 97 CodeGen/FixMain.cc \ … … 96 99 CodeGen/OperatorTable.cc \ 97 100 Common/Assert.cc \ 101 Common/Eval.cc \ 98 102 Common/SemanticError.cc \ 99 103 Common/UniqueName.cc \ … … 134 138 Tuples/Explode.cc \ 135 139 Tuples/TupleAssignment.cc \ 136 Tuples/TupleExpansion.cc 140 Tuples/TupleExpansion.cc \ 141 Validate/HandleAttributes.cc 137 142 138 143 MAINTAINERCLEANFILES += ${libdir}/${notdir ${cfa_cpplib_PROGRAMS}} -
src/Makefile.in
rd1e0979 r3bbd012 23 23 #SRC += ArgTweak/Rewriter.cc \ 24 24 # ArgTweak/Mutate.cc 25 26 ######################### -*- Mode: Makefile-Gmake -*- ######################## 27 ############################################################################### 25 28 26 29 ######################### -*- Mode: Makefile-Gmake -*- ######################## … … 192 195 SynTree/libdemangle_a-Attribute.$(OBJEXT) \ 193 196 SynTree/libdemangle_a-DeclReplacer.$(OBJEXT) \ 197 libdemangle_a-CompilationState.$(OBJEXT) \ 194 198 CodeGen/libdemangle_a-CodeGenerator.$(OBJEXT) \ 195 199 CodeGen/libdemangle_a-FixMain.$(OBJEXT) \ … … 197 201 CodeGen/libdemangle_a-OperatorTable.$(OBJEXT) \ 198 202 Common/libdemangle_a-Assert.$(OBJEXT) \ 203 Common/libdemangle_a-Eval.$(OBJEXT) \ 199 204 Common/libdemangle_a-SemanticError.$(OBJEXT) \ 200 205 Common/libdemangle_a-UniqueName.$(OBJEXT) \ … … 235 240 Tuples/libdemangle_a-Explode.$(OBJEXT) \ 236 241 Tuples/libdemangle_a-TupleAssignment.$(OBJEXT) \ 237 Tuples/libdemangle_a-TupleExpansion.$(OBJEXT) 242 Tuples/libdemangle_a-TupleExpansion.$(OBJEXT) \ 243 Validate/libdemangle_a-HandleAttributes.$(OBJEXT) 238 244 libdemangle_a_OBJECTS = $(am_libdemangle_a_OBJECTS) 239 245 am__installdirs = "$(DESTDIR)$(cfa_cpplibdir)" … … 246 252 am__objects_1 = driver_cfa_cpp-main.$(OBJEXT) \ 247 253 driver_cfa_cpp-MakeLibCfa.$(OBJEXT) \ 254 driver_cfa_cpp-CompilationState.$(OBJEXT) \ 248 255 CodeGen/driver_cfa_cpp-Generate.$(OBJEXT) \ 249 256 CodeGen/driver_cfa_cpp-CodeGenerator.$(OBJEXT) \ … … 261 268 Common/driver_cfa_cpp-Assert.$(OBJEXT) \ 262 269 Common/driver_cfa_cpp-Heap.$(OBJEXT) \ 270 Common/driver_cfa_cpp-Eval.$(OBJEXT) \ 263 271 ControlStruct/driver_cfa_cpp-LabelGenerator.$(OBJEXT) \ 264 272 ControlStruct/driver_cfa_cpp-LabelFixer.$(OBJEXT) \ … … 351 359 Tuples/driver_cfa_cpp-TupleExpansion.$(OBJEXT) \ 352 360 Tuples/driver_cfa_cpp-Explode.$(OBJEXT) \ 361 Validate/driver_cfa_cpp-HandleAttributes.$(OBJEXT) \ 353 362 Virtual/driver_cfa_cpp-ExpandCasts.$(OBJEXT) 354 363 am_driver_cfa_cpp_OBJECTS = $(am__objects_1) … … 390 399 am__v_CXXLD_0 = @echo " CXXLD " $@; 391 400 am__v_CXXLD_1 = 392 @MAINTAINER_MODE_FALSE@am__skiplex = test -f $@ ||393 401 LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS) 394 402 AM_V_LEX = $(am__v_LEX_@AM_V@) … … 397 405 am__v_LEX_1 = 398 406 YLWRAP = $(top_srcdir)/automake/ylwrap 399 @MAINTAINER_MODE_FALSE@am__skipyacc = test -f $@ ||400 407 am__yacc_c2h = sed -e s/cc$$/hh/ -e s/cpp$$/hpp/ -e s/cxx$$/hxx/ \ 401 408 -e s/c++$$/h++/ -e s/c$$/h/ … … 426 433 *) (install-info --version) >/dev/null 2>&1;; \ 427 434 esac 428 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) 435 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ 436 $(LISP)config.h.in 429 437 # Read a list of newline-separated strings from the standard input, 430 438 # and print each of them once, without duplicates. Input order is … … 452 460 $(srcdir)/Parser/module.mk $(srcdir)/ResolvExpr/module.mk \ 453 461 $(srcdir)/SymTab/module.mk $(srcdir)/SynTree/module.mk \ 454 $(srcdir)/Tuples/module.mk $(srcdir)/Virtual/module.mk \ 455 $(top_srcdir)/automake/depcomp $(top_srcdir)/automake/ylwrap \ 456 Parser/lex.cc Parser/parser.cc Parser/parser.hh 462 $(srcdir)/Tuples/module.mk $(srcdir)/Validate/module.mk \ 463 $(srcdir)/Virtual/module.mk $(top_srcdir)/automake/depcomp \ 464 $(top_srcdir)/automake/ylwrap Parser/lex.cc Parser/parser.cc \ 465 Parser/parser.hh 457 466 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) 458 467 ACLOCAL = @ACLOCAL@ … … 505 514 LTLIBOBJS = @LTLIBOBJS@ 506 515 MACHINE_TYPE = @MACHINE_TYPE@ 507 MAINT = @MAINT@508 516 MAKEINFO = @MAKEINFO@ 509 517 MKDIR_P = @MKDIR_P@ … … 579 587 # create object files in directory with source files 580 588 AUTOMAKE_OPTIONS = subdir-objects 581 SRC = main.cc MakeLibCfa.cc Co deGen/Generate.cc \589 SRC = main.cc MakeLibCfa.cc CompilationState.cc CodeGen/Generate.cc \ 582 590 CodeGen/CodeGenerator.cc CodeGen/GenType.cc \ 583 591 CodeGen/FixNames.cc CodeGen/FixMain.cc \ … … 586 594 Concurrency/Waitfor.cc Common/SemanticError.cc \ 587 595 Common/UniqueName.cc Common/DebugMalloc.cc Common/Assert.cc \ 588 Common/Heap.cc Co ntrolStruct/LabelGenerator.cc \596 Common/Heap.cc Common/Eval.cc ControlStruct/LabelGenerator.cc \ 589 597 ControlStruct/LabelFixer.cc ControlStruct/MLEMutator.cc \ 590 598 ControlStruct/Mutate.cc ControlStruct/ForExprMutator.cc \ … … 628 636 SynTree/Attribute.cc SynTree/DeclReplacer.cc \ 629 637 Tuples/TupleAssignment.cc Tuples/TupleExpansion.cc \ 630 Tuples/Explode.cc Virtual/ExpandCasts.cc 638 Tuples/Explode.cc Validate/HandleAttributes.cc \ 639 Virtual/ExpandCasts.cc 631 640 MAINTAINERCLEANFILES = Parser/parser.output ${libdir}/${notdir \ 632 641 ${cfa_cpplib_PROGRAMS}} … … 640 649 driver_cfa_cpp_SOURCES = ${SRC} 641 650 driver_cfa_cpp_LDADD = -ldl # yywrap 642 driver_cfa_cpp_CXXFLAGS = -Wno-deprecated -Wall -Wextra -DDEBUG_ALL -I ${abs_top_srcdir}/src/include -DYY_NO_INPUT -O2 -g -std=c++14651 driver_cfa_cpp_CXXFLAGS = -Wno-deprecated -Wall -Wextra -DDEBUG_ALL -I./Parser -I${abs_top_srcdir}/src/Parser -I${abs_top_srcdir}/src/include -DYY_NO_INPUT -O2 -g -std=c++14 643 652 driver_cfa_cpp_LDFLAGS = -Xlinker -export-dynamic 644 653 demangler_SOURCES = SymTab/demangler.cc … … 683 692 SynTree/Attribute.cc \ 684 693 SynTree/DeclReplacer.cc \ 694 CompilationState.cc \ 685 695 CodeGen/CodeGenerator.cc \ 686 696 CodeGen/FixMain.cc \ … … 688 698 CodeGen/OperatorTable.cc \ 689 699 Common/Assert.cc \ 700 Common/Eval.cc \ 690 701 Common/SemanticError.cc \ 691 702 Common/UniqueName.cc \ … … 726 737 Tuples/Explode.cc \ 727 738 Tuples/TupleAssignment.cc \ 728 Tuples/TupleExpansion.cc 739 Tuples/TupleExpansion.cc \ 740 Validate/HandleAttributes.cc 729 741 730 742 all: $(BUILT_SOURCES) … … 733 745 .SUFFIXES: 734 746 .SUFFIXES: .cc .ll .o .obj .yy 735 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/CodeGen/module.mk $(srcdir)/CodeTools/module.mk $(srcdir)/Concurrency/module.mk $(srcdir)/Common/module.mk $(srcdir)/ControlStruct/module.mk $(srcdir)/GenPoly/module.mk $(srcdir)/InitTweak/module.mk $(srcdir)/Parser/module.mk $(srcdir)/ResolvExpr/module.mk $(srcdir)/SymTab/module.mk $(srcdir)/SynTree/module.mk $(srcdir)/Tuples/module.mk $(srcdir)/Virtual/module.mk $(am__configure_deps)747 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/CodeGen/module.mk $(srcdir)/CodeTools/module.mk $(srcdir)/Concurrency/module.mk $(srcdir)/Common/module.mk $(srcdir)/ControlStruct/module.mk $(srcdir)/GenPoly/module.mk $(srcdir)/InitTweak/module.mk $(srcdir)/Parser/module.mk $(srcdir)/ResolvExpr/module.mk $(srcdir)/SymTab/module.mk $(srcdir)/SynTree/module.mk $(srcdir)/Tuples/module.mk $(srcdir)/Validate/module.mk $(srcdir)/Virtual/module.mk $(am__configure_deps) 736 748 @for dep in $?; do \ 737 749 case '$(am__configure_deps)' in \ … … 753 765 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ 754 766 esac; 755 $(srcdir)/CodeGen/module.mk $(srcdir)/CodeTools/module.mk $(srcdir)/Concurrency/module.mk $(srcdir)/Common/module.mk $(srcdir)/ControlStruct/module.mk $(srcdir)/GenPoly/module.mk $(srcdir)/InitTweak/module.mk $(srcdir)/Parser/module.mk $(srcdir)/ResolvExpr/module.mk $(srcdir)/SymTab/module.mk $(srcdir)/SynTree/module.mk $(srcdir)/Tuples/module.mk $(srcdir)/V irtual/module.mk $(am__empty):767 $(srcdir)/CodeGen/module.mk $(srcdir)/CodeTools/module.mk $(srcdir)/Concurrency/module.mk $(srcdir)/Common/module.mk $(srcdir)/ControlStruct/module.mk $(srcdir)/GenPoly/module.mk $(srcdir)/InitTweak/module.mk $(srcdir)/Parser/module.mk $(srcdir)/ResolvExpr/module.mk $(srcdir)/SymTab/module.mk $(srcdir)/SynTree/module.mk $(srcdir)/Tuples/module.mk $(srcdir)/Validate/module.mk $(srcdir)/Virtual/module.mk $(am__empty): 756 768 757 769 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) 758 770 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 759 771 760 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@$(am__configure_deps)772 $(top_srcdir)/configure: $(am__configure_deps) 761 773 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 762 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@$(am__aclocal_m4_deps)774 $(ACLOCAL_M4): $(am__aclocal_m4_deps) 763 775 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 764 776 $(am__aclocal_m4_deps): … … 871 883 @: > Common/$(DEPDIR)/$(am__dirstamp) 872 884 Common/libdemangle_a-Assert.$(OBJEXT): Common/$(am__dirstamp) \ 885 Common/$(DEPDIR)/$(am__dirstamp) 886 Common/libdemangle_a-Eval.$(OBJEXT): Common/$(am__dirstamp) \ 873 887 Common/$(DEPDIR)/$(am__dirstamp) 874 888 Common/libdemangle_a-SemanticError.$(OBJEXT): Common/$(am__dirstamp) \ … … 1014 1028 Tuples/libdemangle_a-TupleExpansion.$(OBJEXT): Tuples/$(am__dirstamp) \ 1015 1029 Tuples/$(DEPDIR)/$(am__dirstamp) 1030 Validate/$(am__dirstamp): 1031 @$(MKDIR_P) Validate 1032 @: > Validate/$(am__dirstamp) 1033 Validate/$(DEPDIR)/$(am__dirstamp): 1034 @$(MKDIR_P) Validate/$(DEPDIR) 1035 @: > Validate/$(DEPDIR)/$(am__dirstamp) 1036 Validate/libdemangle_a-HandleAttributes.$(OBJEXT): \ 1037 Validate/$(am__dirstamp) Validate/$(DEPDIR)/$(am__dirstamp) 1016 1038 1017 1039 libdemangle.a: $(libdemangle_a_OBJECTS) $(libdemangle_a_DEPENDENCIES) $(EXTRA_libdemangle_a_DEPENDENCIES) … … 1104 1126 Common/$(DEPDIR)/$(am__dirstamp) 1105 1127 Common/driver_cfa_cpp-Heap.$(OBJEXT): Common/$(am__dirstamp) \ 1128 Common/$(DEPDIR)/$(am__dirstamp) 1129 Common/driver_cfa_cpp-Eval.$(OBJEXT): Common/$(am__dirstamp) \ 1106 1130 Common/$(DEPDIR)/$(am__dirstamp) 1107 1131 ControlStruct/driver_cfa_cpp-LabelGenerator.$(OBJEXT): \ … … 1312 1336 Tuples/driver_cfa_cpp-Explode.$(OBJEXT): Tuples/$(am__dirstamp) \ 1313 1337 Tuples/$(DEPDIR)/$(am__dirstamp) 1338 Validate/driver_cfa_cpp-HandleAttributes.$(OBJEXT): \ 1339 Validate/$(am__dirstamp) Validate/$(DEPDIR)/$(am__dirstamp) 1314 1340 Virtual/$(am__dirstamp): 1315 1341 @$(MKDIR_P) Virtual … … 1342 1368 -rm -f SynTree/*.$(OBJEXT) 1343 1369 -rm -f Tuples/*.$(OBJEXT) 1370 -rm -f Validate/*.$(OBJEXT) 1344 1371 -rm -f Virtual/*.$(OBJEXT) 1345 1372 … … 1347 1374 -rm -f *.tab.c 1348 1375 1376 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/driver_cfa_cpp-CompilationState.Po@am__quote@ 1349 1377 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/driver_cfa_cpp-MakeLibCfa.Po@am__quote@ 1350 1378 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/driver_cfa_cpp-main.Po@am__quote@ 1379 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdemangle_a-CompilationState.Po@am__quote@ 1351 1380 @AMDEP_TRUE@@am__include@ @am__quote@CodeGen/$(DEPDIR)/driver_cfa_cpp-CodeGenerator.Po@am__quote@ 1352 1381 @AMDEP_TRUE@@am__include@ @am__quote@CodeGen/$(DEPDIR)/driver_cfa_cpp-FixMain.Po@am__quote@ … … 1363 1392 @AMDEP_TRUE@@am__include@ @am__quote@Common/$(DEPDIR)/driver_cfa_cpp-Assert.Po@am__quote@ 1364 1393 @AMDEP_TRUE@@am__include@ @am__quote@Common/$(DEPDIR)/driver_cfa_cpp-DebugMalloc.Po@am__quote@ 1394 @AMDEP_TRUE@@am__include@ @am__quote@Common/$(DEPDIR)/driver_cfa_cpp-Eval.Po@am__quote@ 1365 1395 @AMDEP_TRUE@@am__include@ @am__quote@Common/$(DEPDIR)/driver_cfa_cpp-Heap.Po@am__quote@ 1366 1396 @AMDEP_TRUE@@am__include@ @am__quote@Common/$(DEPDIR)/driver_cfa_cpp-SemanticError.Po@am__quote@ 1367 1397 @AMDEP_TRUE@@am__include@ @am__quote@Common/$(DEPDIR)/driver_cfa_cpp-UniqueName.Po@am__quote@ 1368 1398 @AMDEP_TRUE@@am__include@ @am__quote@Common/$(DEPDIR)/libdemangle_a-Assert.Po@am__quote@ 1399 @AMDEP_TRUE@@am__include@ @am__quote@Common/$(DEPDIR)/libdemangle_a-Eval.Po@am__quote@ 1369 1400 @AMDEP_TRUE@@am__include@ @am__quote@Common/$(DEPDIR)/libdemangle_a-SemanticError.Po@am__quote@ 1370 1401 @AMDEP_TRUE@@am__include@ @am__quote@Common/$(DEPDIR)/libdemangle_a-UniqueName.Po@am__quote@ … … 1535 1566 @AMDEP_TRUE@@am__include@ @am__quote@Tuples/$(DEPDIR)/libdemangle_a-TupleAssignment.Po@am__quote@ 1536 1567 @AMDEP_TRUE@@am__include@ @am__quote@Tuples/$(DEPDIR)/libdemangle_a-TupleExpansion.Po@am__quote@ 1568 @AMDEP_TRUE@@am__include@ @am__quote@Validate/$(DEPDIR)/driver_cfa_cpp-HandleAttributes.Po@am__quote@ 1569 @AMDEP_TRUE@@am__include@ @am__quote@Validate/$(DEPDIR)/libdemangle_a-HandleAttributes.Po@am__quote@ 1537 1570 @AMDEP_TRUE@@am__include@ @am__quote@Virtual/$(DEPDIR)/driver_cfa_cpp-ExpandCasts.Po@am__quote@ 1538 1571 … … 2057 2090 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -c -o SynTree/libdemangle_a-DeclReplacer.obj `if test -f 'SynTree/DeclReplacer.cc'; then $(CYGPATH_W) 'SynTree/DeclReplacer.cc'; else $(CYGPATH_W) '$(srcdir)/SynTree/DeclReplacer.cc'; fi` 2058 2091 2092 libdemangle_a-CompilationState.o: CompilationState.cc 2093 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -MT libdemangle_a-CompilationState.o -MD -MP -MF $(DEPDIR)/libdemangle_a-CompilationState.Tpo -c -o libdemangle_a-CompilationState.o `test -f 'CompilationState.cc' || echo '$(srcdir)/'`CompilationState.cc 2094 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdemangle_a-CompilationState.Tpo $(DEPDIR)/libdemangle_a-CompilationState.Po 2095 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='CompilationState.cc' object='libdemangle_a-CompilationState.o' libtool=no @AMDEPBACKSLASH@ 2096 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 2097 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -c -o libdemangle_a-CompilationState.o `test -f 'CompilationState.cc' || echo '$(srcdir)/'`CompilationState.cc 2098 2099 libdemangle_a-CompilationState.obj: CompilationState.cc 2100 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -MT libdemangle_a-CompilationState.obj -MD -MP -MF $(DEPDIR)/libdemangle_a-CompilationState.Tpo -c -o libdemangle_a-CompilationState.obj `if test -f 'CompilationState.cc'; then $(CYGPATH_W) 'CompilationState.cc'; else $(CYGPATH_W) '$(srcdir)/CompilationState.cc'; fi` 2101 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdemangle_a-CompilationState.Tpo $(DEPDIR)/libdemangle_a-CompilationState.Po 2102 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='CompilationState.cc' object='libdemangle_a-CompilationState.obj' libtool=no @AMDEPBACKSLASH@ 2103 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 2104 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -c -o libdemangle_a-CompilationState.obj `if test -f 'CompilationState.cc'; then $(CYGPATH_W) 'CompilationState.cc'; else $(CYGPATH_W) '$(srcdir)/CompilationState.cc'; fi` 2105 2059 2106 CodeGen/libdemangle_a-CodeGenerator.o: CodeGen/CodeGenerator.cc 2060 2107 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -MT CodeGen/libdemangle_a-CodeGenerator.o -MD -MP -MF CodeGen/$(DEPDIR)/libdemangle_a-CodeGenerator.Tpo -c -o CodeGen/libdemangle_a-CodeGenerator.o `test -f 'CodeGen/CodeGenerator.cc' || echo '$(srcdir)/'`CodeGen/CodeGenerator.cc … … 2127 2174 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -c -o Common/libdemangle_a-Assert.obj `if test -f 'Common/Assert.cc'; then $(CYGPATH_W) 'Common/Assert.cc'; else $(CYGPATH_W) '$(srcdir)/Common/Assert.cc'; fi` 2128 2175 2176 Common/libdemangle_a-Eval.o: Common/Eval.cc 2177 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -MT Common/libdemangle_a-Eval.o -MD -MP -MF Common/$(DEPDIR)/libdemangle_a-Eval.Tpo -c -o Common/libdemangle_a-Eval.o `test -f 'Common/Eval.cc' || echo '$(srcdir)/'`Common/Eval.cc 2178 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) Common/$(DEPDIR)/libdemangle_a-Eval.Tpo Common/$(DEPDIR)/libdemangle_a-Eval.Po 2179 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Common/Eval.cc' object='Common/libdemangle_a-Eval.o' libtool=no @AMDEPBACKSLASH@ 2180 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 2181 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -c -o Common/libdemangle_a-Eval.o `test -f 'Common/Eval.cc' || echo '$(srcdir)/'`Common/Eval.cc 2182 2183 Common/libdemangle_a-Eval.obj: Common/Eval.cc 2184 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -MT Common/libdemangle_a-Eval.obj -MD -MP -MF Common/$(DEPDIR)/libdemangle_a-Eval.Tpo -c -o Common/libdemangle_a-Eval.obj `if test -f 'Common/Eval.cc'; then $(CYGPATH_W) 'Common/Eval.cc'; else $(CYGPATH_W) '$(srcdir)/Common/Eval.cc'; fi` 2185 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) Common/$(DEPDIR)/libdemangle_a-Eval.Tpo Common/$(DEPDIR)/libdemangle_a-Eval.Po 2186 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Common/Eval.cc' object='Common/libdemangle_a-Eval.obj' libtool=no @AMDEPBACKSLASH@ 2187 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 2188 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -c -o Common/libdemangle_a-Eval.obj `if test -f 'Common/Eval.cc'; then $(CYGPATH_W) 'Common/Eval.cc'; else $(CYGPATH_W) '$(srcdir)/Common/Eval.cc'; fi` 2189 2129 2190 Common/libdemangle_a-SemanticError.o: Common/SemanticError.cc 2130 2191 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -MT Common/libdemangle_a-SemanticError.o -MD -MP -MF Common/$(DEPDIR)/libdemangle_a-SemanticError.Tpo -c -o Common/libdemangle_a-SemanticError.o `test -f 'Common/SemanticError.cc' || echo '$(srcdir)/'`Common/SemanticError.cc … … 2673 2734 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -c -o Tuples/libdemangle_a-TupleExpansion.obj `if test -f 'Tuples/TupleExpansion.cc'; then $(CYGPATH_W) 'Tuples/TupleExpansion.cc'; else $(CYGPATH_W) '$(srcdir)/Tuples/TupleExpansion.cc'; fi` 2674 2735 2736 Validate/libdemangle_a-HandleAttributes.o: Validate/HandleAttributes.cc 2737 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -MT Validate/libdemangle_a-HandleAttributes.o -MD -MP -MF Validate/$(DEPDIR)/libdemangle_a-HandleAttributes.Tpo -c -o Validate/libdemangle_a-HandleAttributes.o `test -f 'Validate/HandleAttributes.cc' || echo '$(srcdir)/'`Validate/HandleAttributes.cc 2738 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) Validate/$(DEPDIR)/libdemangle_a-HandleAttributes.Tpo Validate/$(DEPDIR)/libdemangle_a-HandleAttributes.Po 2739 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Validate/HandleAttributes.cc' object='Validate/libdemangle_a-HandleAttributes.o' libtool=no @AMDEPBACKSLASH@ 2740 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 2741 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -c -o Validate/libdemangle_a-HandleAttributes.o `test -f 'Validate/HandleAttributes.cc' || echo '$(srcdir)/'`Validate/HandleAttributes.cc 2742 2743 Validate/libdemangle_a-HandleAttributes.obj: Validate/HandleAttributes.cc 2744 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -MT Validate/libdemangle_a-HandleAttributes.obj -MD -MP -MF Validate/$(DEPDIR)/libdemangle_a-HandleAttributes.Tpo -c -o Validate/libdemangle_a-HandleAttributes.obj `if test -f 'Validate/HandleAttributes.cc'; then $(CYGPATH_W) 'Validate/HandleAttributes.cc'; else $(CYGPATH_W) '$(srcdir)/Validate/HandleAttributes.cc'; fi` 2745 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) Validate/$(DEPDIR)/libdemangle_a-HandleAttributes.Tpo Validate/$(DEPDIR)/libdemangle_a-HandleAttributes.Po 2746 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Validate/HandleAttributes.cc' object='Validate/libdemangle_a-HandleAttributes.obj' libtool=no @AMDEPBACKSLASH@ 2747 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 2748 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdemangle_a_CXXFLAGS) $(CXXFLAGS) -c -o Validate/libdemangle_a-HandleAttributes.obj `if test -f 'Validate/HandleAttributes.cc'; then $(CYGPATH_W) 'Validate/HandleAttributes.cc'; else $(CYGPATH_W) '$(srcdir)/Validate/HandleAttributes.cc'; fi` 2749 2675 2750 SymTab/demangler-demangler.o: SymTab/demangler.cc 2676 2751 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(demangler_CXXFLAGS) $(CXXFLAGS) -MT SymTab/demangler-demangler.o -MD -MP -MF SymTab/$(DEPDIR)/demangler-demangler.Tpo -c -o SymTab/demangler-demangler.o `test -f 'SymTab/demangler.cc' || echo '$(srcdir)/'`SymTab/demangler.cc … … 2715 2790 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -c -o driver_cfa_cpp-MakeLibCfa.obj `if test -f 'MakeLibCfa.cc'; then $(CYGPATH_W) 'MakeLibCfa.cc'; else $(CYGPATH_W) '$(srcdir)/MakeLibCfa.cc'; fi` 2716 2791 2792 driver_cfa_cpp-CompilationState.o: CompilationState.cc 2793 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -MT driver_cfa_cpp-CompilationState.o -MD -MP -MF $(DEPDIR)/driver_cfa_cpp-CompilationState.Tpo -c -o driver_cfa_cpp-CompilationState.o `test -f 'CompilationState.cc' || echo '$(srcdir)/'`CompilationState.cc 2794 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/driver_cfa_cpp-CompilationState.Tpo $(DEPDIR)/driver_cfa_cpp-CompilationState.Po 2795 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='CompilationState.cc' object='driver_cfa_cpp-CompilationState.o' libtool=no @AMDEPBACKSLASH@ 2796 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 2797 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -c -o driver_cfa_cpp-CompilationState.o `test -f 'CompilationState.cc' || echo '$(srcdir)/'`CompilationState.cc 2798 2799 driver_cfa_cpp-CompilationState.obj: CompilationState.cc 2800 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -MT driver_cfa_cpp-CompilationState.obj -MD -MP -MF $(DEPDIR)/driver_cfa_cpp-CompilationState.Tpo -c -o driver_cfa_cpp-CompilationState.obj `if test -f 'CompilationState.cc'; then $(CYGPATH_W) 'CompilationState.cc'; else $(CYGPATH_W) '$(srcdir)/CompilationState.cc'; fi` 2801 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/driver_cfa_cpp-CompilationState.Tpo $(DEPDIR)/driver_cfa_cpp-CompilationState.Po 2802 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='CompilationState.cc' object='driver_cfa_cpp-CompilationState.obj' libtool=no @AMDEPBACKSLASH@ 2803 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 2804 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -c -o driver_cfa_cpp-CompilationState.obj `if test -f 'CompilationState.cc'; then $(CYGPATH_W) 'CompilationState.cc'; else $(CYGPATH_W) '$(srcdir)/CompilationState.cc'; fi` 2805 2717 2806 CodeGen/driver_cfa_cpp-Generate.o: CodeGen/Generate.cc 2718 2807 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -MT CodeGen/driver_cfa_cpp-Generate.o -MD -MP -MF CodeGen/$(DEPDIR)/driver_cfa_cpp-Generate.Tpo -c -o CodeGen/driver_cfa_cpp-Generate.o `test -f 'CodeGen/Generate.cc' || echo '$(srcdir)/'`CodeGen/Generate.cc … … 2925 3014 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -c -o Common/driver_cfa_cpp-Heap.obj `if test -f 'Common/Heap.cc'; then $(CYGPATH_W) 'Common/Heap.cc'; else $(CYGPATH_W) '$(srcdir)/Common/Heap.cc'; fi` 2926 3015 3016 Common/driver_cfa_cpp-Eval.o: Common/Eval.cc 3017 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -MT Common/driver_cfa_cpp-Eval.o -MD -MP -MF Common/$(DEPDIR)/driver_cfa_cpp-Eval.Tpo -c -o Common/driver_cfa_cpp-Eval.o `test -f 'Common/Eval.cc' || echo '$(srcdir)/'`Common/Eval.cc 3018 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) Common/$(DEPDIR)/driver_cfa_cpp-Eval.Tpo Common/$(DEPDIR)/driver_cfa_cpp-Eval.Po 3019 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Common/Eval.cc' object='Common/driver_cfa_cpp-Eval.o' libtool=no @AMDEPBACKSLASH@ 3020 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 3021 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -c -o Common/driver_cfa_cpp-Eval.o `test -f 'Common/Eval.cc' || echo '$(srcdir)/'`Common/Eval.cc 3022 3023 Common/driver_cfa_cpp-Eval.obj: Common/Eval.cc 3024 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -MT Common/driver_cfa_cpp-Eval.obj -MD -MP -MF Common/$(DEPDIR)/driver_cfa_cpp-Eval.Tpo -c -o Common/driver_cfa_cpp-Eval.obj `if test -f 'Common/Eval.cc'; then $(CYGPATH_W) 'Common/Eval.cc'; else $(CYGPATH_W) '$(srcdir)/Common/Eval.cc'; fi` 3025 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) Common/$(DEPDIR)/driver_cfa_cpp-Eval.Tpo Common/$(DEPDIR)/driver_cfa_cpp-Eval.Po 3026 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Common/Eval.cc' object='Common/driver_cfa_cpp-Eval.obj' libtool=no @AMDEPBACKSLASH@ 3027 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 3028 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -c -o Common/driver_cfa_cpp-Eval.obj `if test -f 'Common/Eval.cc'; then $(CYGPATH_W) 'Common/Eval.cc'; else $(CYGPATH_W) '$(srcdir)/Common/Eval.cc'; fi` 3029 2927 3030 ControlStruct/driver_cfa_cpp-LabelGenerator.o: ControlStruct/LabelGenerator.cc 2928 3031 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -MT ControlStruct/driver_cfa_cpp-LabelGenerator.o -MD -MP -MF ControlStruct/$(DEPDIR)/driver_cfa_cpp-LabelGenerator.Tpo -c -o ControlStruct/driver_cfa_cpp-LabelGenerator.o `test -f 'ControlStruct/LabelGenerator.cc' || echo '$(srcdir)/'`ControlStruct/LabelGenerator.cc … … 4184 4287 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 4185 4288 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -c -o Tuples/driver_cfa_cpp-Explode.obj `if test -f 'Tuples/Explode.cc'; then $(CYGPATH_W) 'Tuples/Explode.cc'; else $(CYGPATH_W) '$(srcdir)/Tuples/Explode.cc'; fi` 4289 4290 Validate/driver_cfa_cpp-HandleAttributes.o: Validate/HandleAttributes.cc 4291 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -MT Validate/driver_cfa_cpp-HandleAttributes.o -MD -MP -MF Validate/$(DEPDIR)/driver_cfa_cpp-HandleAttributes.Tpo -c -o Validate/driver_cfa_cpp-HandleAttributes.o `test -f 'Validate/HandleAttributes.cc' || echo '$(srcdir)/'`Validate/HandleAttributes.cc 4292 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) Validate/$(DEPDIR)/driver_cfa_cpp-HandleAttributes.Tpo Validate/$(DEPDIR)/driver_cfa_cpp-HandleAttributes.Po 4293 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Validate/HandleAttributes.cc' object='Validate/driver_cfa_cpp-HandleAttributes.o' libtool=no @AMDEPBACKSLASH@ 4294 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 4295 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -c -o Validate/driver_cfa_cpp-HandleAttributes.o `test -f 'Validate/HandleAttributes.cc' || echo '$(srcdir)/'`Validate/HandleAttributes.cc 4296 4297 Validate/driver_cfa_cpp-HandleAttributes.obj: Validate/HandleAttributes.cc 4298 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -MT Validate/driver_cfa_cpp-HandleAttributes.obj -MD -MP -MF Validate/$(DEPDIR)/driver_cfa_cpp-HandleAttributes.Tpo -c -o Validate/driver_cfa_cpp-HandleAttributes.obj `if test -f 'Validate/HandleAttributes.cc'; then $(CYGPATH_W) 'Validate/HandleAttributes.cc'; else $(CYGPATH_W) '$(srcdir)/Validate/HandleAttributes.cc'; fi` 4299 @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) Validate/$(DEPDIR)/driver_cfa_cpp-HandleAttributes.Tpo Validate/$(DEPDIR)/driver_cfa_cpp-HandleAttributes.Po 4300 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Validate/HandleAttributes.cc' object='Validate/driver_cfa_cpp-HandleAttributes.obj' libtool=no @AMDEPBACKSLASH@ 4301 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 4302 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(driver_cfa_cpp_CXXFLAGS) $(CXXFLAGS) -c -o Validate/driver_cfa_cpp-HandleAttributes.obj `if test -f 'Validate/HandleAttributes.cc'; then $(CYGPATH_W) 'Validate/HandleAttributes.cc'; else $(CYGPATH_W) '$(srcdir)/Validate/HandleAttributes.cc'; fi` 4186 4303 4187 4304 Virtual/driver_cfa_cpp-ExpandCasts.o: Virtual/ExpandCasts.cc … … 4346 4463 -rm -f Tuples/$(DEPDIR)/$(am__dirstamp) 4347 4464 -rm -f Tuples/$(am__dirstamp) 4465 -rm -f Validate/$(DEPDIR)/$(am__dirstamp) 4466 -rm -f Validate/$(am__dirstamp) 4348 4467 -rm -f Virtual/$(DEPDIR)/$(am__dirstamp) 4349 4468 -rm -f Virtual/$(am__dirstamp) … … 4364 4483 4365 4484 distclean: distclean-am 4366 -rm -rf ./$(DEPDIR) CodeGen/$(DEPDIR) CodeTools/$(DEPDIR) Common/$(DEPDIR) Concurrency/$(DEPDIR) ControlStruct/$(DEPDIR) GenPoly/$(DEPDIR) InitTweak/$(DEPDIR) Parser/$(DEPDIR) ResolvExpr/$(DEPDIR) SymTab/$(DEPDIR) SynTree/$(DEPDIR) Tuples/$(DEPDIR) V irtual/$(DEPDIR)4485 -rm -rf ./$(DEPDIR) CodeGen/$(DEPDIR) CodeTools/$(DEPDIR) Common/$(DEPDIR) Concurrency/$(DEPDIR) ControlStruct/$(DEPDIR) GenPoly/$(DEPDIR) InitTweak/$(DEPDIR) Parser/$(DEPDIR) ResolvExpr/$(DEPDIR) SymTab/$(DEPDIR) SynTree/$(DEPDIR) Tuples/$(DEPDIR) Validate/$(DEPDIR) Virtual/$(DEPDIR) 4367 4486 -rm -f Makefile 4368 4487 distclean-am: clean-am distclean-compile distclean-generic \ … … 4410 4529 4411 4530 maintainer-clean: maintainer-clean-am 4412 -rm -rf ./$(DEPDIR) CodeGen/$(DEPDIR) CodeTools/$(DEPDIR) Common/$(DEPDIR) Concurrency/$(DEPDIR) ControlStruct/$(DEPDIR) GenPoly/$(DEPDIR) InitTweak/$(DEPDIR) Parser/$(DEPDIR) ResolvExpr/$(DEPDIR) SymTab/$(DEPDIR) SynTree/$(DEPDIR) Tuples/$(DEPDIR) V irtual/$(DEPDIR)4531 -rm -rf ./$(DEPDIR) CodeGen/$(DEPDIR) CodeTools/$(DEPDIR) Common/$(DEPDIR) Concurrency/$(DEPDIR) ControlStruct/$(DEPDIR) GenPoly/$(DEPDIR) InitTweak/$(DEPDIR) Parser/$(DEPDIR) ResolvExpr/$(DEPDIR) SymTab/$(DEPDIR) SynTree/$(DEPDIR) Tuples/$(DEPDIR) Validate/$(DEPDIR) Virtual/$(DEPDIR) 4413 4532 -rm -f Makefile 4414 4533 maintainer-clean-am: distclean-am maintainer-clean-generic -
src/Parser/DeclarationNode.cc
rd1e0979 r3bbd012 10 10 // Created On : Sat May 16 12:34:05 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Fri Jul 6 06:56:08201813 // Update Count : 1 08812 // Last Modified On : Fri Jul 20 14:56:54 2018 13 // Update Count : 1107 14 14 // 15 15 … … 54 54 55 55 DeclarationNode::DeclarationNode() : 56 builtin( NoBuiltinType ), 57 type( nullptr ), 58 bitfieldWidth( nullptr ), 59 hasEllipsis( false ), 60 linkage( ::linkage ), 61 asmName( nullptr ), 62 initializer( nullptr ), 63 extension( false ), 64 asmStmt( nullptr ) { 56 linkage( ::linkage ) { 65 57 66 58 // variable.name = nullptr; … … 104 96 newnode->builtin = NoBuiltinType; 105 97 newnode->type = maybeClone( type ); 98 newnode->inLine = inLine; 106 99 newnode->storageClasses = storageClasses; 107 100 newnode->funcSpecs = funcSpecs; … … 131 124 } // DeclarationNode::clone 132 125 133 void DeclarationNode::print( std::ostream & os, int indent ) const {126 void DeclarationNode::print( std::ostream & os, int indent ) const { 134 127 os << string( indent, ' ' ); 135 128 if ( name ) { … … 167 160 } 168 161 169 void DeclarationNode::printList( std::ostream & os, int indent ) const {162 void DeclarationNode::printList( std::ostream & os, int indent ) const { 170 163 ParseNode::printList( os, indent ); 171 164 if ( hasEllipsis ) { … … 521 514 } // DeclarationNode::copySpecifiers 522 515 523 static void addQualifiersToType( TypeData *& src, TypeData * dst ) {516 static void addQualifiersToType( TypeData *& src, TypeData * dst ) { 524 517 if ( dst->base ) { 525 518 addQualifiersToType( src, dst->base ); … … 574 567 } // addQualifiers 575 568 576 static void addTypeToType( TypeData *& src, TypeData *&dst ) {569 static void addTypeToType( TypeData *& src, TypeData *& dst ) { 577 570 if ( src->forall && dst->kind == TypeData::Function ) { 578 571 if ( dst->forall ) { … … 965 958 } 966 959 967 void buildList( const DeclarationNode * firstNode, std::list< Declaration * > & outputList ) {960 void buildList( const DeclarationNode * firstNode, std::list< Declaration * > & outputList ) { 968 961 SemanticErrorException errors; 969 962 std::back_insert_iterator< std::list< Declaration * > > out( outputList ); … … 1002 995 // struct T; // anonymous member 1003 996 // }; 1004 if ( ! (extracted && decl->name == "" && ! anon ) ) {1005 if ( decl->name == "") {997 if ( ! (extracted && decl->name == "" && ! anon && ! cur->get_inLine()) ) { 998 if ( decl->name == "" ) { 1006 999 if ( DeclarationWithType * dwt = dynamic_cast<DeclarationWithType *>( decl ) ) { 1007 1000 if ( ReferenceToType * aggr = dynamic_cast<ReferenceToType *>( dwt->get_type() ) ) { 1008 1001 if ( aggr->name.find("anonymous") == std::string::npos ) { 1009 bool isInline = false; 1010 if (cur->type->kind == TypeData::Aggregate || cur->type->kind == TypeData::AggregateInst) { 1011 if (cur->type->kind == TypeData::Aggregate) { 1012 isInline = cur->type->aggregate.inLine; 1013 } else { 1014 isInline = cur->type->aggInst.inLine; 1015 if ( TypeData * aggr = cur->type->aggInst.aggregate ) { 1016 if ( aggr->kind == TypeData::Aggregate ) { 1017 isInline = isInline || aggr->aggregate.inLine; 1018 } 1019 } 1020 } 1021 } 1022 if (! isInline) { 1023 // temporary: warn about anonymous member declarations of named types, since this conflicts with the syntax for the forward declaration of an anonymous type 1002 if ( ! cur->get_inLine() ) { 1003 // temporary: warn about anonymous member declarations of named types, since 1004 // this conflicts with the syntax for the forward declaration of an anonymous type 1024 1005 SemanticWarning( cur->location, Warning::AggrForwardDecl, aggr->name.c_str() ); 1025 } 1026 } 1027 } 1028 } 1029 } 1006 } // if 1007 } // if 1008 } // if 1009 } // if 1010 } // if 1030 1011 decl->location = cur->location; 1031 * 1032 } 1012 *out++ = decl; 1013 } // if 1033 1014 } // if 1034 } catch( SemanticErrorException & e ) {1015 } catch( SemanticErrorException & e ) { 1035 1016 errors.append( e ); 1036 1017 } // try 1037 } // while1018 } // for 1038 1019 1039 1020 if ( ! errors.isEmpty() ) { … … 1043 1024 1044 1025 // currently only builds assertions, function parameters, and return values 1045 void buildList( const DeclarationNode * firstNode, std::list< DeclarationWithType * > & outputList ) {1026 void buildList( const DeclarationNode * firstNode, std::list< DeclarationWithType * > & outputList ) { 1046 1027 SemanticErrorException errors; 1047 1028 std::back_insert_iterator< std::list< DeclarationWithType * > > out( outputList ); … … 1074 1055 * out++ = obj; 1075 1056 } // if 1076 } catch( SemanticErrorException & e ) {1057 } catch( SemanticErrorException & e ) { 1077 1058 errors.append( e ); 1078 1059 } // try … … 1084 1065 } // buildList 1085 1066 1086 void buildTypeList( const DeclarationNode * firstNode, std::list< Type * > & outputList ) {1067 void buildTypeList( const DeclarationNode * firstNode, std::list< Type * > & outputList ) { 1087 1068 SemanticErrorException errors; 1088 1069 std::back_insert_iterator< std::list< Type * > > out( outputList ); … … 1092 1073 try { 1093 1074 * out++ = cur->buildType(); 1094 } catch( SemanticErrorException & e ) {1075 } catch( SemanticErrorException & e ) { 1095 1076 errors.append( e ); 1096 1077 } // try -
src/Parser/ParseNode.h
rd1e0979 r3bbd012 10 10 // Created On : Sat May 16 13:28:16 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Jun 6 16:17:18201813 // Update Count : 8 4312 // Last Modified On : Fri Jul 20 14:56:30 2018 13 // Update Count : 850 14 14 // 15 15 … … 68 68 } 69 69 70 virtual void print( __attribute__((unused)) std::ostream & os, __attribute__((unused)) int indent = 0 ) const {}71 virtual void printList( std::ostream & os, int indent = 0 ) const {70 virtual void print( __attribute__((unused)) std::ostream & os, __attribute__((unused)) int indent = 0 ) const {} 71 virtual void printList( std::ostream & os, int indent = 0 ) const { 72 72 print( os, indent ); 73 73 if ( next ) next->print( os, indent ); … … 103 103 InitializerNode * next_init() const { return kids; } 104 104 105 void print( std::ostream & os, int indent = 0 ) const;105 void print( std::ostream & os, int indent = 0 ) const; 106 106 void printOneLine( std::ostream & ) const; 107 107 … … 127 127 ExpressionNode * set_extension( bool exten ) { extension = exten; return this; } 128 128 129 virtual void print( std::ostream & os, __attribute__((unused)) int indent = 0 ) const override {130 os << expr.get() << std::endl;131 } 132 void printOneLine( __attribute__((unused)) std::ostream & os, __attribute__((unused)) int indent = 0 ) const {}129 virtual void print( std::ostream & os, __attribute__((unused)) int indent = 0 ) const override { 130 os << expr.get(); 131 } 132 void printOneLine( __attribute__((unused)) std::ostream & os, __attribute__((unused)) int indent = 0 ) const {} 133 133 134 134 template<typename T> … … 290 290 } 291 291 292 virtual void print( __attribute__((unused)) std::ostream & os, __attribute__((unused)) int indent = 0 ) const override;293 virtual void printList( __attribute__((unused)) std::ostream & os, __attribute__((unused)) int indent = 0 ) const override;292 virtual void print( __attribute__((unused)) std::ostream & os, __attribute__((unused)) int indent = 0 ) const override; 293 virtual void printList( __attribute__((unused)) std::ostream & os, __attribute__((unused)) int indent = 0 ) const override; 294 294 295 295 Declaration * build() const; … … 303 303 bool get_extension() const { return extension; } 304 304 DeclarationNode * set_extension( bool exten ) { extension = exten; return this; } 305 306 bool get_inLine() const { return inLine; } 307 DeclarationNode * set_inLine( bool inL ) { inLine = inL; return this; } 305 308 public: 306 309 DeclarationNode * get_last() { return (DeclarationNode *)ParseNode::get_last(); } … … 327 330 StaticAssert_t assert; 328 331 329 BuiltinType builtin; 330 331 TypeData * type; 332 332 BuiltinType builtin = NoBuiltinType; 333 334 TypeData * type = nullptr; 335 336 bool inLine = false; 333 337 Type::FuncSpecifiers funcSpecs; 334 338 Type::StorageClasses storageClasses; 335 339 336 ExpressionNode * bitfieldWidth ;340 ExpressionNode * bitfieldWidth = nullptr; 337 341 std::unique_ptr<ExpressionNode> enumeratorValue; 338 bool hasEllipsis ;342 bool hasEllipsis = false; 339 343 LinkageSpec::Spec linkage; 340 Expression * asmName ;344 Expression * asmName = nullptr; 341 345 std::list< Attribute * > attributes; 342 InitializerNode * initializer ;346 InitializerNode * initializer = nullptr; 343 347 bool extension = false; 344 348 std::string error; 345 StatementNode * asmStmt ;349 StatementNode * asmStmt = nullptr; 346 350 347 351 static UniqueName anonymous; … … 377 381 virtual StatementNode * append_last_case( StatementNode * ); 378 382 379 virtual void print( std::ostream & os, __attribute__((unused)) int indent = 0 ) const override {383 virtual void print( std::ostream & os, __attribute__((unused)) int indent = 0 ) const override { 380 384 os << stmt.get() << std::endl; 381 385 } … … 435 439 436 440 template< typename SynTreeType, typename NodeType, template< typename, typename...> class Container, typename... Args > 437 void buildList( const NodeType * firstNode, Container< SynTreeType *, Args... > & outputList ) {441 void buildList( const NodeType * firstNode, Container< SynTreeType *, Args... > & outputList ) { 438 442 SemanticErrorException errors; 439 443 std::back_insert_iterator< Container< SynTreeType *, Args... > > out( outputList ); … … 449 453 assertf(false, "buildList unknown type"); 450 454 } // if 451 } catch( SemanticErrorException & e ) {455 } catch( SemanticErrorException & e ) { 452 456 errors.append( e ); 453 457 } // try … … 460 464 461 465 // in DeclarationNode.cc 462 void buildList( const DeclarationNode * firstNode, std::list< Declaration * > & outputList );463 void buildList( const DeclarationNode * firstNode, std::list< DeclarationWithType * > & outputList );464 void buildTypeList( const DeclarationNode * firstNode, std::list< Type * > & outputList );466 void buildList( const DeclarationNode * firstNode, std::list< Declaration * > & outputList ); 467 void buildList( const DeclarationNode * firstNode, std::list< DeclarationWithType * > & outputList ); 468 void buildTypeList( const DeclarationNode * firstNode, std::list< Type * > & outputList ); 465 469 466 470 template< typename SynTreeType, typename NodeType > 467 void buildMoveList( const NodeType * firstNode, std::list< SynTreeType * > & outputList ) {471 void buildMoveList( const NodeType * firstNode, std::list< SynTreeType * > & outputList ) { 468 472 buildList( firstNode, outputList ); 469 473 delete firstNode; -
src/Parser/TypeData.cc
rd1e0979 r3bbd012 10 10 // Created On : Sat May 16 15:12:51 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Jul 12 13:52:09201813 // Update Count : 6 0612 // Last Modified On : Fri Jul 20 14:39:31 2018 13 // Update Count : 622 14 14 // 15 15 … … 76 76 aggregate.parent = nullptr; 77 77 aggregate.anon = false; 78 aggregate.inLine = false;79 78 break; 80 79 case AggregateInst: … … 83 82 aggInst.params = nullptr; 84 83 aggInst.hoistType = false; 85 aggInst.inLine = false;86 84 break; 87 85 case Symbolic: … … 221 219 newtype->aggregate.body = aggregate.body; 222 220 newtype->aggregate.anon = aggregate.anon; 223 newtype->aggregate.inLine = aggregate.inLine;224 221 newtype->aggregate.tagged = aggregate.tagged; 225 222 newtype->aggregate.parent = aggregate.parent ? new string( *aggregate.parent ) : nullptr; … … 229 226 newtype->aggInst.params = maybeClone( aggInst.params ); 230 227 newtype->aggInst.hoistType = aggInst.hoistType; 231 newtype->aggInst.inLine = aggInst.inLine;232 228 break; 233 229 case Enum: … … 275 271 276 272 switch ( kind ) { 277 case Unknown: 278 os << "entity of unknown type "; 273 case Basic: 274 if ( signedness != DeclarationNode::NoSignedness ) os << DeclarationNode::signednessNames[ signedness ] << " "; 275 if ( length != DeclarationNode::NoLength ) os << DeclarationNode::lengthNames[ length ] << " "; 276 if ( complextype == DeclarationNode::NoComplexType ) { // basic type 277 assert( basictype != DeclarationNode::NoBasicType ); 278 os << DeclarationNode::basicTypeNames[ basictype ] << " "; 279 } else { // complex type 280 // handle double _Complex 281 if ( basictype != DeclarationNode::NoBasicType ) os << DeclarationNode::basicTypeNames[ basictype ] << " "; 282 os << DeclarationNode::complexTypeNames[ complextype ] << " "; 283 } // if 279 284 break; 280 285 case Pointer: … … 285 290 } // if 286 291 break; 287 case EnumConstant: 288 os << "enumeration constant "; 289 break; 290 case Basic: 291 if ( signedness != DeclarationNode::NoSignedness ) os << DeclarationNode::signednessNames[ signedness ] << " "; 292 if ( length != DeclarationNode::NoLength ) os << DeclarationNode::lengthNames[ length ] << " "; 293 assert( basictype != DeclarationNode::NoBasicType ); 294 os << DeclarationNode::basicTypeNames[ basictype ] << " "; 295 if ( complextype != DeclarationNode::NoComplexType ) os << DeclarationNode::complexTypeNames[ complextype ] << " "; 292 case Reference: 293 os << "reference "; 294 if ( base ) { 295 os << "to "; 296 base->print( os, indent ); 297 } // if 296 298 break; 297 299 case Array: … … 379 381 } // if 380 382 break; 381 case SymbolicInst: 382 os << "instance of type " << *symbolic.name; 383 if ( symbolic.actuals ) { 384 os << " with parameters" << endl; 385 symbolic.actuals->printList( os, indent + 2 ); 386 } // if 383 case EnumConstant: 384 os << "enumeration constant "; 387 385 break; 388 386 case Symbolic: … … 406 404 } // if 407 405 break; 406 case SymbolicInst: 407 os << *symbolic.name; 408 if ( symbolic.actuals ) { 409 os << "("; 410 symbolic.actuals->printList( os, indent + 2 ); 411 os << ")"; 412 } // if 413 break; 408 414 case Tuple: 409 415 os << "tuple "; … … 421 427 case Builtin: 422 428 os << DeclarationNode::builtinTypeNames[builtintype]; 429 break; 430 case GlobalScope: 431 break; 432 case Qualified: 433 qualified.parent->print( os ); 434 os << "."; 435 qualified.child->print( os ); 436 break; 437 case Unknown: 438 os << "entity of unknown type "; 423 439 break; 424 440 default: -
src/Parser/TypeData.h
rd1e0979 r3bbd012 10 10 // Created On : Sat May 16 15:18:36 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Jul 12 14:00:09201813 // Update Count : 19 312 // Last Modified On : Fri Jul 20 13:56:40 2018 13 // Update Count : 195 14 14 // 15 15 … … 26 26 27 27 struct TypeData { 28 enum Kind { Basic, Pointer, Array, Reference, Function, Aggregate, AggregateInst, Enum, EnumConstant, Symbolic,28 enum Kind { Basic, Pointer, Reference, Array, Function, Aggregate, AggregateInst, Enum, EnumConstant, Symbolic, 29 29 SymbolicInst, Tuple, Typeof, Builtin, GlobalScope, Qualified, Unknown }; 30 30 … … 37 37 bool body; 38 38 bool anon; 39 bool inLine;40 39 41 40 bool tagged; … … 47 46 ExpressionNode * params; 48 47 bool hoistType; 49 bool inLine;50 48 }; 51 49 … … 79 77 }; 80 78 81 struct Qualified_t { 79 struct Qualified_t { // qualified type S.T 82 80 TypeData * parent; 83 81 TypeData * child; -
src/Parser/TypedefTable.cc
rd1e0979 r3bbd012 10 10 // Created On : Sat May 16 15:20:13 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Fri Jul 13 18:35:54201813 // Update Count : 25 712 // Last Modified On : Wed Jul 25 15:32:35 2018 13 // Update Count : 258 14 14 // 15 15 … … 49 49 bool TypedefTable::exists( const string & identifier ) { 50 50 return kindTable.find( identifier ) != kindTable.end(); 51 } // TypedefTable::exists 52 53 bool TypedefTable::existsCurr( const string & identifier ) { 54 return kindTable.findAt( kindTable.currentScope() - 1, identifier ) != kindTable.end(); 51 55 } // TypedefTable::exists 52 56 -
src/Parser/TypedefTable.h
rd1e0979 r3bbd012 10 10 // Created On : Sat May 16 15:24:36 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Jul 10 18:32:23201813 // Update Count : 11 212 // Last Modified On : Wed Jul 25 15:33:55 2018 13 // Update Count : 114 14 14 // 15 15 … … 31 31 32 32 bool exists( const std::string & identifier ); 33 bool existsCurr( const std::string & identifier ); 33 34 int isKind( const std::string & identifier ) const; 34 35 void makeTypedef( const std::string & name, int kind = TYPEDEFname ); -
src/Parser/parser.yy
rd1e0979 r3bbd012 10 10 // Created On : Sat Sep 1 20:22:55 2001 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Jul 12 16:16:25 201813 // Update Count : 3 75612 // Last Modified On : Wed Jul 25 15:54:35 2018 13 // Update Count : 3841 14 14 // 15 15 … … 114 114 } // for 115 115 } // distExt 116 117 void distInl( DeclarationNode * declaration ) { 118 // distribute EXTENSION across all declarations 119 for ( DeclarationNode *iter = declaration; iter != nullptr; iter = (DeclarationNode *)iter->get_next() ) { 120 iter->set_inLine( true ); 121 } // for 122 } // distInl 116 123 117 124 void distQual( DeclarationNode * declaration, DeclarationNode * qualifiers ) { … … 166 173 } // build_postfix_name 167 174 175 DeclarationNode * fieldDecl( DeclarationNode * typeSpec, DeclarationNode * fieldList ) { 176 if ( ! fieldList ) { // field declarator ? 177 if ( ! ( typeSpec->type && typeSpec->type->kind == TypeData::Aggregate ) ) { 178 stringstream ss; 179 typeSpec->type->print( ss ); 180 SemanticWarning( yylloc, Warning::SuperfluousDecl, ss.str().c_str() ); 181 return nullptr; 182 } // if 183 fieldList = DeclarationNode::newName( nullptr ); 184 } // if 185 return distAttr( typeSpec, fieldList ); // mark all fields in list 186 } // fieldDecl 187 168 188 bool forall = false, yyy = false; // aggregate have one or more forall qualifiers ? 169 189 … … 338 358 %type<decl> exception_declaration 339 359 340 %type<decl> field_declaration field_declaration_list_opt field_declarator_opt field_declaring_list341 %type<en> field field_ list field_name fraction_constants_opt360 %type<decl> field_declaration_list_opt field_declaration field_declaring_list_opt field_declarator field_abstract_list_opt field_abstract 361 %type<en> field field_name_list field_name fraction_constants_opt 342 362 343 363 %type<decl> external_function_definition function_definition function_array function_declarator function_no_ptr function_ptr … … 352 372 %type<decl> cfa_array_parameter_1st_dimension 353 373 354 %type<decl> cfa_trait_declaring_list cfa_declaration cfa_field_declaring_list 374 %type<decl> cfa_trait_declaring_list cfa_declaration cfa_field_declaring_list cfa_field_abstract_list 355 375 %type<decl> cfa_function_declaration cfa_function_return cfa_function_specifier 356 376 … … 492 512 ; 493 513 494 identifier:495 IDENTIFIER496 | ATTR_IDENTIFIER // CFA497 | quasi_keyword498 ;499 500 514 no_attr_identifier: 501 515 IDENTIFIER 502 516 | quasi_keyword 517 | '@' // CFA 518 { Token tok = { new string( DeclarationNode::anonymous.newName() ), yylval.tok.loc }; $$ = tok; } 519 ; 520 521 identifier: 522 no_attr_identifier 523 | ATTR_IDENTIFIER // CFA 503 524 ; 504 525 … … 541 562 | type_name '.' no_attr_identifier // CFA, nested type 542 563 { SemanticError( yylloc, "Qualified name is currently unimplemented." ); $$ = nullptr; } 543 | type_name '.' '[' field_ list ']'// CFA, nested type / tuple field selector564 | type_name '.' '[' field_name_list ']' // CFA, nested type / tuple field selector 544 565 { SemanticError( yylloc, "Qualified name is currently unimplemented." ); $$ = nullptr; } 545 566 | GENERIC '(' assignment_expression ',' generic_assoc_list ')' // C11 … … 594 615 | postfix_expression FLOATING_FRACTIONconstant // CFA, tuple index 595 616 { $$ = new ExpressionNode( build_fieldSel( $1, build_field_name_FLOATING_FRACTIONconstant( *$2 ) ) ); } 596 | postfix_expression '.' '[' field_ list ']'// CFA, tuple field selector617 | postfix_expression '.' '[' field_name_list ']' // CFA, tuple field selector 597 618 { $$ = new ExpressionNode( build_fieldSel( $1, build_tuple( $4 ) ) ); } 598 619 | postfix_expression ARROW no_attr_identifier … … 602 623 | postfix_expression ARROW INTEGERconstant // CFA, tuple index 603 624 { $$ = new ExpressionNode( build_pfieldSel( $1, build_constantInteger( *$3 ) ) ); } 604 | postfix_expression ARROW '[' field_ list ']'// CFA, tuple field selector625 | postfix_expression ARROW '[' field_name_list ']' // CFA, tuple field selector 605 626 { $$ = new ExpressionNode( build_pfieldSel( $1, build_tuple( $4 ) ) ); } 606 627 | postfix_expression ICR … … 629 650 // empty 630 651 { $$ = nullptr; } 631 // | '@' // use default argument 632 // { $$ = new ExpressionNode( build_constantInteger( *new string( "2" ) ) ); } 652 | '?' // CFA, default parameter 653 { SemanticError( yylloc, "Default parameter for argument is currently unimplemented." ); $$ = nullptr; } 654 // { $$ = new ExpressionNode( build_constantInteger( *new string( "2" ) ) ); } 633 655 | assignment_expression 634 656 ; 635 657 636 field_ list:// CFA, tuple field selector658 field_name_list: // CFA, tuple field selector 637 659 field 638 | field_ list ',' field{ $$ = (ExpressionNode *)$1->set_last( $3 ); }660 | field_name_list ',' field { $$ = (ExpressionNode *)$1->set_last( $3 ); } 639 661 ; 640 662 … … 643 665 | FLOATING_DECIMALconstant field 644 666 { $$ = new ExpressionNode( build_fieldSel( new ExpressionNode( build_field_name_FLOATING_DECIMALconstant( *$1 ) ), maybeMoveBuild<Expression>( $2 ) ) ); } 645 | FLOATING_DECIMALconstant '[' field_ list ']'667 | FLOATING_DECIMALconstant '[' field_name_list ']' 646 668 { $$ = new ExpressionNode( build_fieldSel( new ExpressionNode( build_field_name_FLOATING_DECIMALconstant( *$1 ) ), build_tuple( $3 ) ) ); } 647 669 | field_name '.' field 648 670 { $$ = new ExpressionNode( build_fieldSel( $1, maybeMoveBuild<Expression>( $3 ) ) ); } 649 | field_name '.' '[' field_ list ']'671 | field_name '.' '[' field_name_list ']' 650 672 { $$ = new ExpressionNode( build_fieldSel( $1, build_tuple( $4 ) ) ); } 651 673 | field_name ARROW field 652 674 { $$ = new ExpressionNode( build_pfieldSel( $1, maybeMoveBuild<Expression>( $3 ) ) ); } 653 | field_name ARROW '[' field_ list ']'675 | field_name ARROW '[' field_name_list ']' 654 676 { $$ = new ExpressionNode( build_pfieldSel( $1, build_tuple( $4 ) ) ); } 655 677 ; … … 1932 1954 1933 1955 field_declaration: 1934 type_specifier field_declaring_list ';' 1935 { $$ = distAttr( $1, $2 ); } 1936 | EXTENSION type_specifier field_declaring_list ';' // GCC 1937 { distExt( $3 ); $$ = distAttr( $2, $3 ); } // mark all fields in list 1938 | INLINE type_specifier field_declaring_list ';' // CFA 1939 { 1940 if ( $2->type && ( $2->type->kind == TypeData::Aggregate || $2->type->kind == TypeData::AggregateInst ) ) { 1941 if ( $2->type->kind == TypeData::Aggregate ) { 1942 $2->type->aggregate.inLine = true; 1943 } else { 1944 $2->type->aggInst.inLine = true; 1945 } // if 1946 $$ = distAttr( $2, $3 ); 1947 } else { 1948 SemanticError( yylloc, "inline qualifier only allowed for aggregate field declarations." ); $$ = nullptr; 1949 } // if 1956 type_specifier field_declaring_list_opt ';' 1957 { $$ = fieldDecl( $1, $2 ); } 1958 | EXTENSION type_specifier field_declaring_list_opt ';' // GCC 1959 { $$ = fieldDecl( $2, $3 ); distExt( $$ ); } 1960 | INLINE type_specifier field_abstract_list_opt ';' // CFA 1961 { 1962 if ( ! $3 ) { // field declarator ? 1963 $3 = DeclarationNode::newName( nullptr ); 1964 } // if 1965 $3->inLine = true; 1966 $$ = distAttr( $2, $3 ); // mark all fields in list 1967 distInl( $3 ); 1950 1968 } 1951 1969 | typedef_declaration ';' // CFA … … 1953 1971 | EXTENSION cfa_field_declaring_list ';' // GCC 1954 1972 { distExt( $2 ); $$ = $2; } // mark all fields in list 1973 | INLINE cfa_field_abstract_list ';' // CFA, new style field declaration 1974 { $$ = $2; } // mark all fields in list 1955 1975 | cfa_typedef_declaration ';' // CFA 1956 1976 | static_assert // C11 1957 1977 ; 1958 1978 1979 field_declaring_list_opt: 1980 // empty 1981 { $$ = nullptr; } 1982 | field_declarator 1983 | field_declaring_list_opt ',' attribute_list_opt field_declarator 1984 { $$ = $1->appendList( $4->addQualifiers( $3 ) ); } 1985 ; 1986 1987 field_declarator: 1988 bit_subrange_size // C special case, no field name 1989 { $$ = DeclarationNode::newBitfield( $1 ); } 1990 | variable_declarator bit_subrange_size_opt 1991 // A semantic check is required to ensure bit_subrange only appears on integral types. 1992 { $$ = $1->addBitfield( $2 ); } 1993 | variable_type_redeclarator bit_subrange_size_opt 1994 // A semantic check is required to ensure bit_subrange only appears on integral types. 1995 { $$ = $1->addBitfield( $2 ); } 1996 ; 1997 1998 field_abstract_list_opt: 1999 // empty 2000 { $$ = nullptr; } 2001 | field_abstract 2002 | field_abstract_list_opt ',' attribute_list_opt field_abstract 2003 { $$ = $1->appendList( $4->addQualifiers( $3 ) ); } 2004 ; 2005 2006 field_abstract: 2007 // no bit fields 2008 variable_abstract_declarator 2009 ; 2010 1959 2011 cfa_field_declaring_list: // CFA, new style field declaration 1960 cfa_abstract_declarator_tuple // CFA, no field name1961 |cfa_abstract_declarator_tuple no_attr_identifier_or_type_name2012 // bit-fields are handled by C declarations 2013 cfa_abstract_declarator_tuple no_attr_identifier_or_type_name 1962 2014 { $$ = $1->addName( $2 ); } 1963 2015 | cfa_field_declaring_list ',' no_attr_identifier_or_type_name 1964 2016 { $$ = $1->appendList( $1->cloneType( $3 ) ); } 1965 | cfa_field_declaring_list ',' // CFA, no field name 2017 ; 2018 2019 cfa_field_abstract_list: // CFA, new style field declaration 2020 // bit-fields are handled by C declarations 2021 cfa_abstract_declarator_tuple 2022 | cfa_field_abstract_list ',' 1966 2023 { $$ = $1->appendList( $1->cloneType( 0 ) ); } 1967 ;1968 1969 field_declaring_list:1970 field_declarator_opt1971 | field_declaring_list ',' attribute_list_opt field_declarator_opt1972 { $$ = $1->appendList( $4->addQualifiers( $3 ) ); }1973 ;1974 1975 field_declarator_opt:1976 // empty1977 { $$ = DeclarationNode::newName( 0 ); /* XXX */ } // CFA, no field name1978 // '@'1979 // { $$ = DeclarationNode::newName( new string( DeclarationNode::anonymous.newName() ) ); } // CFA, no field name1980 | bit_subrange_size // no field name1981 { $$ = DeclarationNode::newBitfield( $1 ); }1982 | variable_declarator bit_subrange_size_opt1983 // A semantic check is required to ensure bit_subrange only appears on base type int.1984 { $$ = $1->addBitfield( $2 ); }1985 | variable_type_redeclarator bit_subrange_size_opt1986 // A semantic check is required to ensure bit_subrange only appears on base type int.1987 { $$ = $1->addBitfield( $2 ); }1988 | variable_abstract_declarator // CFA, no field name1989 2024 ; 1990 2025 … … 2226 2261 | '[' push constant_expression ELLIPSIS constant_expression pop ']' // GCC, multiple array elements 2227 2262 { $$ = new ExpressionNode( new RangeExpr( maybeMoveBuild< Expression >( $3 ), maybeMoveBuild< Expression >( $5 ) ) ); } 2228 | '.' '[' push field_ list pop ']'// CFA, tuple field selector2263 | '.' '[' push field_name_list pop ']' // CFA, tuple field selector 2229 2264 { $$ = $4; } 2230 2265 ; … … 2769 2804 typedef 2770 2805 // hide type name in enclosing scope by variable name 2771 { typedefTable.addToEnclosingScope( *$1->name, IDENTIFIER, "ID" ); } 2806 { 2807 // if ( ! typedefTable.existsCurr( *$1->name ) ) { 2808 typedefTable.addToEnclosingScope( *$1->name, IDENTIFIER, "ID" ); 2809 // } else { 2810 // SemanticError( yylloc, string("'") + *$1->name + "' redeclared as different kind of symbol." ); $$ = nullptr; 2811 // } // if 2812 } 2772 2813 | '(' paren_type ')' 2773 2814 { $$ = $2; } … … 2780 2821 { $$ = $3->addPointer( DeclarationNode::newPointer( $2, $1 ) ); } 2781 2822 | '(' type_ptr ')' attribute_list_opt 2782 { $$ = $2->addQualifiers( $4 ); } 2823 { $$ = $2->addQualifiers( $4 ); } // redundant parenthesis 2783 2824 ; 2784 2825 -
src/ResolvExpr/AlternativeFinder.cc
rd1e0979 r3bbd012 25 25 #include <vector> // for vector 26 26 27 #include "CompilationState.h" // for resolvep 27 28 #include "Alternative.h" // for AltList, Alternative 28 29 #include "AlternativeFinder.h" … … 49 50 #include "typeops.h" // for adjustExprType, polyCost, castCost 50 51 51 bool resolvep;52 52 #define PRINT( text ) if ( resolvep ) { text } 53 53 //#define DEBUG_COST -
src/ResolvExpr/CurrentObject.cc
rd1e0979 r3bbd012 139 139 ArrayIterator( ArrayType * at ) : array( at ) { 140 140 PRINT( std::cerr << "Creating array iterator: " << at << std::endl; ) 141 base = at-> get_base();141 base = at->base; 142 142 memberIter = createMemberIterator( base ); 143 if ( at->isVarLen ) SemanticError( at, "VLA initialization does not support @= " );144 setSize( at-> get_dimension());143 if ( at->isVarLen ) SemanticError( at, "VLA initialization does not support @=: " ); 144 setSize( at->dimension ); 145 145 } 146 146 … … 150 150 151 151 private: 152 void setSize( Expression * expr ) { 153 if ( ConstantExpr * constExpr = dynamic_cast< ConstantExpr * >( expr ) ) { 154 try { 155 size = constExpr->intValue(); 156 PRINT( std::cerr << "array type with size: " << size << std::endl; ) 157 } catch ( SemanticErrorException & ) { 158 SemanticError( expr, "Constant expression of non-integral type in array dimension: " ); 159 } 160 } else if ( CastExpr * castExpr = dynamic_cast< CastExpr * >( expr ) ) { 161 setSize( castExpr->get_arg() ); // xxx - need to perform the conversion specified by the cast 162 } else if ( VariableExpr * varExpr = dynamic_cast< VariableExpr * >( expr ) ) { 163 if ( EnumInstType * inst = dynamic_cast< EnumInstType * > ( varExpr->result ) ) { 164 long long int value; 165 if ( inst->baseEnum->valueOf( varExpr->var, value ) ) { 166 size = value; 167 } 168 } 152 void setSize( Expression * expr ) { // replace this logic with an eval call 153 auto res = eval(expr); 154 if (res.second) { 155 size = res.first; 169 156 } else { 170 assertf( false, "unhandled expression in setSize: %s", toString( expr ).c_str() ); // xxx - if not a constant expression, it's not simple to determine how long the array actually is, which is necessary for initialization to be done correctly -- fix this157 SemanticError( expr->location, toString("Array designator must be a constant expression: ", expr) ); 171 158 } 172 159 } -
src/SymTab/Validate.cc
rd1e0979 r3bbd012 61 61 #include "Parser/LinkageSpec.h" // for C 62 62 #include "ResolvExpr/typeops.h" // for typesCompatible 63 #include "ResolvExpr/Resolver.h" // for findSingleExpression 63 64 #include "SymTab/Autogen.h" // for SizeType 64 65 #include "SynTree/Attribute.h" // for noAttributes, Attribute … … 72 73 #include "SynTree/TypeSubstitution.h" // for TypeSubstitution 73 74 #include "SynTree/Visitor.h" // for Visitor 75 #include "Validate/HandleAttributes.h" // for handleAttributes 74 76 75 77 class CompoundStmt; … … 247 249 }; 248 250 249 struct ArrayLength {251 struct ArrayLength : public WithIndexer { 250 252 /// for array types without an explicit length, compute the length and store it so that it 251 253 /// is known to the rest of the phases. For example, … … 258 260 259 261 void previsit( ObjectDecl * objDecl ); 262 void previsit( ArrayType * arrayType ); 260 263 }; 261 264 … … 312 315 acceptAll( translationUnit, finder ); // xxx - remove this pass soon 313 316 mutateAll( translationUnit, labelAddrFixer ); 317 Validate::handleAttributes( translationUnit ); 314 318 } 315 319 … … 1232 1236 void ArrayLength::previsit( ObjectDecl * objDecl ) { 1233 1237 if ( ArrayType * at = dynamic_cast< ArrayType * >( objDecl->type ) ) { 1234 if ( at-> get_dimension()) return;1238 if ( at->dimension ) return; 1235 1239 if ( ListInit * init = dynamic_cast< ListInit * >( objDecl->init ) ) { 1236 at->set_dimension( new ConstantExpr( Constant::from_ulong( init->initializers.size() ) ) ); 1237 } 1240 at->dimension = new ConstantExpr( Constant::from_ulong( init->initializers.size() ) ); 1241 } 1242 } 1243 } 1244 1245 void ArrayLength::previsit( ArrayType * type ) { 1246 if ( type->dimension ) { 1247 // need to resolve array dimensions early so that constructor code can correctly determine 1248 // if a type is a VLA (and hence whether its elements need to be constructed) 1249 ResolvExpr::findSingleExpression( type->dimension, SymTab::SizeType->clone(), indexer ); 1250 1251 // must re-evaluate whether a type is a VLA, now that more information is available 1252 // (e.g. the dimension may have been an enumerator, which was unknown prior to this step) 1253 type->isVarLen = ! InitTweak::isConstExpr( type->dimension ); 1238 1254 } 1239 1255 } -
src/benchmark/Makefile.am
rd1e0979 r3bbd012 17 17 # applies to both programs 18 18 CFLAGS = 19 AM_CFLAGS = -g -Wall -Wno-unused-function -O2 20 CC = @CFA_BINDIR@/@CFA_NAME@ 19 AM_CFLAGS = \ 20 -XCFA \ 21 -t \ 22 -B${abs_top_builddir}/src/driver \ 23 -g \ 24 -O2 \ 25 -Wall \ 26 -Wno-unused-function \ 27 -quiet \ 28 -I$(srcdir) \ 29 -L${abs_top_builddir}/src/libcfa \ 30 -I${abs_top_srcdir}/src/libcfa \ 31 -I${abs_top_srcdir}/src/libcfa/containers \ 32 -I${abs_top_srcdir}/src/libcfa/concurrency \ 33 -I${abs_top_srcdir}/src/libcfa/stdhdr 34 35 CC = ${top_builddir}/src/driver/cfa 21 36 TOOLSDIR = ${abs_top_srcdir}/tools/ 22 37 REPEAT = ${TOOLSDIR}repeat … … 93 108 ## ========================================================================================================= 94 109 loop$(EXEEXT): 95 @@BACKEND_CC@ loop.c -DBENCH_N=5000000000 -I .-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}110 @@BACKEND_CC@ loop.c -DBENCH_N=5000000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 96 111 97 112 function$(EXEEXT): 98 @@BACKEND_CC@ function.c -DBENCH_N=5000000000 -I .-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}113 @@BACKEND_CC@ function.c -DBENCH_N=5000000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 99 114 100 115 fetch_add$(EXEEXT): 101 @@BACKEND_CC@ fetch_add.c -DBENCH_N=500000000 -I .-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}116 @@BACKEND_CC@ fetch_add.c -DBENCH_N=500000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 102 117 103 118 ## ========================================================================================================= … … 118 133 119 134 ctxswitch-pthread$(EXEEXT): 120 @@BACKEND_CC@ ctxswitch/pthreads.c -DBENCH_N=50000000 -I.-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}135 @@BACKEND_CC@ $(srcdir)/ctxswitch/pthreads.c -DBENCH_N=50000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 121 136 122 137 ctxswitch-cfa_coroutine$(EXEEXT): 123 @${CC} ctxswitch/cfa_cor.c -DBENCH_N=50000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}138 @${CC} $(srcdir)/ctxswitch/cfa_cor.c -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 124 139 125 140 ctxswitch-cfa_thread$(EXEEXT): 126 @${CC} ctxswitch/cfa_thrd.c -DBENCH_N=50000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}141 @${CC} $(srcdir)/ctxswitch/cfa_thrd.c -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 127 142 128 143 ctxswitch-cfa_thread2$(EXEEXT): 129 @${CC} ctxswitch/cfa_thrd2.c -DBENCH_N=50000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}144 @${CC} $(srcdir)/ctxswitch/cfa_thrd2.c -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 130 145 131 146 ctxswitch-upp_coroutine$(EXEEXT): 132 @u++ ctxswitch/upp_cor.cc -DBENCH_N=50000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}147 @u++ $(srcdir)/ctxswitch/upp_cor.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 133 148 134 149 ctxswitch-upp_thread$(EXEEXT): 135 @u++ ctxswitch/upp_thrd.cc -DBENCH_N=50000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}150 @u++ $(srcdir)/ctxswitch/upp_thrd.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 136 151 137 152 ctxswitch-kos_fibre$(EXEEXT): 138 @${CXX} ctxswitch/kos_fibre.cpp -DBENCH_N=50000000 -I.-I/home/tdelisle/software/KOS/src/ -g -O2 -lfibre -lpthread -lrt153 @${CXX} $(srcdir)/ctxswitch/kos_fibre.cpp -DBENCH_N=50000000 -I$(srcdir) -I/home/tdelisle/software/KOS/src/ -g -O2 -lfibre -lpthread -lrt 139 154 140 155 ctxswitch-kos_fibre2$(EXEEXT): 141 @${CXX} ctxswitch/kos_fibre2.cpp -DBENCH_N=50000000 -I.-I/home/tdelisle/software/KOS/src/ -g -O2 -lfibre -lpthread -lrt156 @${CXX} $(srcdir)/ctxswitch/kos_fibre2.cpp -DBENCH_N=50000000 -I$(srcdir) -I/home/tdelisle/software/KOS/src/ -g -O2 -lfibre -lpthread -lrt 142 157 143 158 ctxswitch-goroutine$(EXEEXT): 144 @go build -o a.out ctxswitch/goroutine.go159 @go build -o a.out $(srcdir)/ctxswitch/goroutine.go 145 160 146 161 ctxswitch-java_thread$(EXEEXT): 147 @javac ctxswitch/JavaThread.java162 @javac $(srcdir)/ctxswitch/JavaThread.java 148 163 @echo "#!/bin/sh" > a.out 149 164 @echo "cd ctxswitch && java JavaThread" >> a.out … … 163 178 164 179 mutex-pthread_lock$(EXEEXT): 165 @@BACKEND_CC@ mutex/pthreads.c -DBENCH_N=50000000 -I.-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}180 @@BACKEND_CC@ $(srcdir)/mutex/pthreads.c -DBENCH_N=50000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 166 181 167 182 mutex-upp$(EXEEXT): 168 @u++ mutex/upp.cc -DBENCH_N=50000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}183 @u++ $(srcdir)/mutex/upp.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 169 184 170 185 mutex-cfa1$(EXEEXT): 171 @${CC} mutex/cfa1.c -DBENCH_N=5000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}186 @${CC} $(srcdir)/mutex/cfa1.c -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 172 187 173 188 mutex-cfa2$(EXEEXT): 174 @${CC} mutex/cfa2.c -DBENCH_N=5000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}189 @${CC} $(srcdir)/mutex/cfa2.c -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 175 190 176 191 mutex-cfa4$(EXEEXT): 177 @${CC} mutex/cfa4.c -DBENCH_N=5000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}192 @${CC} $(srcdir)/mutex/cfa4.c -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 178 193 179 194 mutex-java_thread$(EXEEXT): 180 @javac mutex/JavaThread.java195 @javac $(srcdir)/mutex/JavaThread.java 181 196 @echo "#!/bin/sh" > a.out 182 197 @echo "cd mutex && java JavaThread" >> a.out … … 193 208 194 209 signal-pthread_cond$(EXEEXT): 195 @@BACKEND_CC@ schedint/pthreads.c -DBENCH_N=500000 -I.-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}210 @@BACKEND_CC@ $(srcdir)/schedint/pthreads.c -DBENCH_N=500000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 196 211 197 212 signal-upp$(EXEEXT): 198 @u++ schedint/upp.cc -DBENCH_N=5000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}213 @u++ $(srcdir)/schedint/upp.cc -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 199 214 200 215 signal-cfa1$(EXEEXT): 201 @${CC} schedint/cfa1.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}216 @${CC} $(srcdir)/schedint/cfa1.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 202 217 203 218 signal-cfa2$(EXEEXT): 204 @${CC} schedint/cfa2.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}219 @${CC} $(srcdir)/schedint/cfa2.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 205 220 206 221 signal-cfa4$(EXEEXT): 207 @${CC} schedint/cfa4.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}222 @${CC} $(srcdir)/schedint/cfa4.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 208 223 209 224 signal-java_thread$(EXEEXT): 210 @javac schedint/JavaThread.java225 @javac $(srcdir)/schedint/JavaThread.java 211 226 @echo "#!/bin/sh" > a.out 212 227 @echo "cd schedint && java JavaThread" >> a.out … … 222 237 223 238 waitfor-upp$(EXEEXT): 224 @u++ schedext/upp.cc -DBENCH_N=5000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}239 @u++ $(srcdir)/schedext/upp.cc -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 225 240 226 241 waitfor-cfa1$(EXEEXT): 227 @${CC} schedext/cfa1.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}242 @${CC} $(srcdir)/schedext/cfa1.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 228 243 229 244 waitfor-cfa2$(EXEEXT): 230 @${CC} schedext/cfa2.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}245 @${CC} $(srcdir)/schedext/cfa2.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 231 246 232 247 waitfor-cfa4$(EXEEXT): 233 @${CC} schedext/cfa4.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}248 @${CC} $(srcdir)/schedext/cfa4.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 234 249 235 250 ## ========================================================================================================= … … 245 260 246 261 creation-cfa_coroutine$(EXEEXT): 247 @${CC} creation/cfa_cor.c -DBENCH_N=10000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}262 @${CC} $(srcdir)/creation/cfa_cor.c -DBENCH_N=10000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 248 263 249 264 creation-cfa_coroutine_eager$(EXEEXT): 250 @${CC} creation/cfa_cor.c -DBENCH_N=10000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} -DEAGER265 @${CC} $(srcdir)/creation/cfa_cor.c -DBENCH_N=10000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} -DEAGER 251 266 252 267 creation-cfa_thread$(EXEEXT): 253 @${CC} creation/cfa_thrd.c -DBENCH_N=10000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}268 @${CC} $(srcdir)/creation/cfa_thrd.c -DBENCH_N=10000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 254 269 255 270 creation-upp_coroutine$(EXEEXT): 256 @u++ creation/upp_cor.cc -DBENCH_N=50000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}271 @u++ $(srcdir)/creation/upp_cor.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 257 272 258 273 creation-upp_thread$(EXEEXT): 259 @u++ creation/upp_thrd.cc -DBENCH_N=50000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}274 @u++ $(srcdir)/creation/upp_thrd.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 260 275 261 276 creation-pthread$(EXEEXT): 262 @@BACKEND_CC@ creation/pthreads.c -DBENCH_N=250000 -I.-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}277 @@BACKEND_CC@ $(srcdir)/creation/pthreads.c -DBENCH_N=250000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 263 278 264 279 creation-goroutine$(EXEEXT): 265 @go build -o a.out creation/goroutine.go280 @go build -o a.out $(srcdir)/creation/goroutine.go 266 281 267 282 creation-java_thread$(EXEEXT): 268 @javac creation/JavaThread.java283 @javac $(srcdir)/creation/JavaThread.java 269 284 @echo "#!/bin/sh" > a.out 270 285 @echo "cd creation && java JavaThread" >> a.out … … 284 299 285 300 301 testdir = $(top_srcdir)/src/tests 302 286 303 compile-array$(EXEEXT): 287 @${CC} -quiet -fsyntax-only -w ../tests/array.c@CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}304 @${CC} -quiet -fsyntax-only -w $(testdir)/array.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 288 305 289 306 compile-attributes$(EXEEXT): 290 @${CC} -quiet -fsyntax-only -w ../tests/attributes.c@CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}307 @${CC} -quiet -fsyntax-only -w $(testdir)/attributes.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 291 308 292 309 compile-empty$(EXEEXT): 293 @${CC} -quiet -fsyntax-only -w compile/empty.c@CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}310 @${CC} -quiet -fsyntax-only -w $(srcdir)/compile/empty.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 294 311 295 312 compile-expression$(EXEEXT): 296 @${CC} -quiet -fsyntax-only -w ../tests/expression.c@CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}313 @${CC} -quiet -fsyntax-only -w $(testdir)/expression.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 297 314 298 315 compile-io$(EXEEXT): 299 @${CC} -quiet -fsyntax-only -w ../tests/io1.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}316 @${CC} -quiet -fsyntax-only -w $(testdir)/io1.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 300 317 301 318 compile-monitor$(EXEEXT): 302 @${CC} -quiet -fsyntax-only -w ../tests/concurrent/monitor.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}319 @${CC} -quiet -fsyntax-only -w $(testdir)/concurrent/monitor.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 303 320 304 321 compile-operators$(EXEEXT): 305 @${CC} -quiet -fsyntax-only -w ../tests/operators.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}322 @${CC} -quiet -fsyntax-only -w $(testdir)/operators.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 306 323 307 324 compile-thread$(EXEEXT): 308 @${CC} -quiet -fsyntax-only -w ../tests/concurrent/thread.c@CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}325 @${CC} -quiet -fsyntax-only -w $(testdir)/concurrent/thread.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 309 326 310 327 compile-typeof$(EXEEXT): 311 @${CC} -quiet -fsyntax-only -w ../tests/typeof.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}312 328 @${CC} -quiet -fsyntax-only -w $(testdir)/typeof.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 329 -
src/benchmark/Makefile.in
rd1e0979 r3bbd012 135 135 AWK = @AWK@ 136 136 BACKEND_CC = @BACKEND_CC@ 137 CC = @CFA_BINDIR@/@CFA_NAME@137 CC = ${top_builddir}/src/driver/cfa 138 138 CCAS = @CCAS@ 139 139 CCASDEPMODE = @CCASDEPMODE@ … … 177 177 LTLIBOBJS = @LTLIBOBJS@ 178 178 MACHINE_TYPE = @MACHINE_TYPE@ 179 MAINT = @MAINT@180 179 MAKEINFO = @MAKEINFO@ 181 180 MKDIR_P = @MKDIR_P@ … … 248 247 top_builddir = @top_builddir@ 249 248 top_srcdir = @top_srcdir@ 250 AM_CFLAGS = -g -Wall -Wno-unused-function -O2 249 AM_CFLAGS = \ 250 -XCFA \ 251 -t \ 252 -B${abs_top_builddir}/src/driver \ 253 -g \ 254 -O2 \ 255 -Wall \ 256 -Wno-unused-function \ 257 -quiet \ 258 -I$(srcdir) \ 259 -L${abs_top_builddir}/src/libcfa \ 260 -I${abs_top_srcdir}/src/libcfa \ 261 -I${abs_top_srcdir}/src/libcfa/containers \ 262 -I${abs_top_srcdir}/src/libcfa/concurrency \ 263 -I${abs_top_srcdir}/src/libcfa/stdhdr 264 251 265 TOOLSDIR = ${abs_top_srcdir}/tools/ 252 266 REPEAT = ${TOOLSDIR}repeat … … 256 270 TIME_FORMAT = "%E" 257 271 PRINT_FORMAT = %20s: #Comments needed for spacing 272 testdir = $(top_srcdir)/src/tests 258 273 all: all-am 259 274 260 275 .SUFFIXES: 261 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@$(srcdir)/Makefile.am $(am__configure_deps)276 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) 262 277 @for dep in $?; do \ 263 278 case '$(am__configure_deps)' in \ … … 283 298 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 284 299 285 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@$(am__configure_deps)300 $(top_srcdir)/configure: $(am__configure_deps) 286 301 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 287 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@$(am__aclocal_m4_deps)302 $(ACLOCAL_M4): $(am__aclocal_m4_deps) 288 303 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 289 304 $(am__aclocal_m4_deps): … … 506 521 507 522 loop$(EXEEXT): 508 @@BACKEND_CC@ loop.c -DBENCH_N=5000000000 -I .-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}523 @@BACKEND_CC@ loop.c -DBENCH_N=5000000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 509 524 510 525 function$(EXEEXT): 511 @@BACKEND_CC@ function.c -DBENCH_N=5000000000 -I .-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}526 @@BACKEND_CC@ function.c -DBENCH_N=5000000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 512 527 513 528 fetch_add$(EXEEXT): 514 @@BACKEND_CC@ fetch_add.c -DBENCH_N=500000000 -I .-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}529 @@BACKEND_CC@ fetch_add.c -DBENCH_N=500000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 515 530 516 531 ctxswitch$(EXEEXT): \ … … 530 545 531 546 ctxswitch-pthread$(EXEEXT): 532 @@BACKEND_CC@ ctxswitch/pthreads.c -DBENCH_N=50000000 -I.-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}547 @@BACKEND_CC@ $(srcdir)/ctxswitch/pthreads.c -DBENCH_N=50000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 533 548 534 549 ctxswitch-cfa_coroutine$(EXEEXT): 535 @${CC} ctxswitch/cfa_cor.c -DBENCH_N=50000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}550 @${CC} $(srcdir)/ctxswitch/cfa_cor.c -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 536 551 537 552 ctxswitch-cfa_thread$(EXEEXT): 538 @${CC} ctxswitch/cfa_thrd.c -DBENCH_N=50000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}553 @${CC} $(srcdir)/ctxswitch/cfa_thrd.c -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 539 554 540 555 ctxswitch-cfa_thread2$(EXEEXT): 541 @${CC} ctxswitch/cfa_thrd2.c -DBENCH_N=50000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}556 @${CC} $(srcdir)/ctxswitch/cfa_thrd2.c -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 542 557 543 558 ctxswitch-upp_coroutine$(EXEEXT): 544 @u++ ctxswitch/upp_cor.cc -DBENCH_N=50000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}559 @u++ $(srcdir)/ctxswitch/upp_cor.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 545 560 546 561 ctxswitch-upp_thread$(EXEEXT): 547 @u++ ctxswitch/upp_thrd.cc -DBENCH_N=50000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}562 @u++ $(srcdir)/ctxswitch/upp_thrd.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 548 563 549 564 ctxswitch-kos_fibre$(EXEEXT): 550 @${CXX} ctxswitch/kos_fibre.cpp -DBENCH_N=50000000 -I.-I/home/tdelisle/software/KOS/src/ -g -O2 -lfibre -lpthread -lrt565 @${CXX} $(srcdir)/ctxswitch/kos_fibre.cpp -DBENCH_N=50000000 -I$(srcdir) -I/home/tdelisle/software/KOS/src/ -g -O2 -lfibre -lpthread -lrt 551 566 552 567 ctxswitch-kos_fibre2$(EXEEXT): 553 @${CXX} ctxswitch/kos_fibre2.cpp -DBENCH_N=50000000 -I.-I/home/tdelisle/software/KOS/src/ -g -O2 -lfibre -lpthread -lrt568 @${CXX} $(srcdir)/ctxswitch/kos_fibre2.cpp -DBENCH_N=50000000 -I$(srcdir) -I/home/tdelisle/software/KOS/src/ -g -O2 -lfibre -lpthread -lrt 554 569 555 570 ctxswitch-goroutine$(EXEEXT): 556 @go build -o a.out ctxswitch/goroutine.go571 @go build -o a.out $(srcdir)/ctxswitch/goroutine.go 557 572 558 573 ctxswitch-java_thread$(EXEEXT): 559 @javac ctxswitch/JavaThread.java574 @javac $(srcdir)/ctxswitch/JavaThread.java 560 575 @echo "#!/bin/sh" > a.out 561 576 @echo "cd ctxswitch && java JavaThread" >> a.out … … 574 589 575 590 mutex-pthread_lock$(EXEEXT): 576 @@BACKEND_CC@ mutex/pthreads.c -DBENCH_N=50000000 -I.-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}591 @@BACKEND_CC@ $(srcdir)/mutex/pthreads.c -DBENCH_N=50000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 577 592 578 593 mutex-upp$(EXEEXT): 579 @u++ mutex/upp.cc -DBENCH_N=50000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}594 @u++ $(srcdir)/mutex/upp.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 580 595 581 596 mutex-cfa1$(EXEEXT): 582 @${CC} mutex/cfa1.c -DBENCH_N=5000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}597 @${CC} $(srcdir)/mutex/cfa1.c -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 583 598 584 599 mutex-cfa2$(EXEEXT): 585 @${CC} mutex/cfa2.c -DBENCH_N=5000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}600 @${CC} $(srcdir)/mutex/cfa2.c -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 586 601 587 602 mutex-cfa4$(EXEEXT): 588 @${CC} mutex/cfa4.c -DBENCH_N=5000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}603 @${CC} $(srcdir)/mutex/cfa4.c -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 589 604 590 605 mutex-java_thread$(EXEEXT): 591 @javac mutex/JavaThread.java606 @javac $(srcdir)/mutex/JavaThread.java 592 607 @echo "#!/bin/sh" > a.out 593 608 @echo "cd mutex && java JavaThread" >> a.out … … 603 618 604 619 signal-pthread_cond$(EXEEXT): 605 @@BACKEND_CC@ schedint/pthreads.c -DBENCH_N=500000 -I.-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}620 @@BACKEND_CC@ $(srcdir)/schedint/pthreads.c -DBENCH_N=500000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 606 621 607 622 signal-upp$(EXEEXT): 608 @u++ schedint/upp.cc -DBENCH_N=5000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}623 @u++ $(srcdir)/schedint/upp.cc -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 609 624 610 625 signal-cfa1$(EXEEXT): 611 @${CC} schedint/cfa1.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}626 @${CC} $(srcdir)/schedint/cfa1.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 612 627 613 628 signal-cfa2$(EXEEXT): 614 @${CC} schedint/cfa2.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}629 @${CC} $(srcdir)/schedint/cfa2.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 615 630 616 631 signal-cfa4$(EXEEXT): 617 @${CC} schedint/cfa4.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}632 @${CC} $(srcdir)/schedint/cfa4.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 618 633 619 634 signal-java_thread$(EXEEXT): 620 @javac schedint/JavaThread.java635 @javac $(srcdir)/schedint/JavaThread.java 621 636 @echo "#!/bin/sh" > a.out 622 637 @echo "cd schedint && java JavaThread" >> a.out … … 630 645 631 646 waitfor-upp$(EXEEXT): 632 @u++ schedext/upp.cc -DBENCH_N=5000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}647 @u++ $(srcdir)/schedext/upp.cc -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 633 648 634 649 waitfor-cfa1$(EXEEXT): 635 @${CC} schedext/cfa1.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}650 @${CC} $(srcdir)/schedext/cfa1.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 636 651 637 652 waitfor-cfa2$(EXEEXT): 638 @${CC} schedext/cfa2.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}653 @${CC} $(srcdir)/schedext/cfa2.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 639 654 640 655 waitfor-cfa4$(EXEEXT): 641 @${CC} schedext/cfa4.c -DBENCH_N=500000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}656 @${CC} $(srcdir)/schedext/cfa4.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 642 657 643 658 creation$(EXEEXT) :\ … … 652 667 653 668 creation-cfa_coroutine$(EXEEXT): 654 @${CC} creation/cfa_cor.c -DBENCH_N=10000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}669 @${CC} $(srcdir)/creation/cfa_cor.c -DBENCH_N=10000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 655 670 656 671 creation-cfa_coroutine_eager$(EXEEXT): 657 @${CC} creation/cfa_cor.c -DBENCH_N=10000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} -DEAGER672 @${CC} $(srcdir)/creation/cfa_cor.c -DBENCH_N=10000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} -DEAGER 658 673 659 674 creation-cfa_thread$(EXEEXT): 660 @${CC} creation/cfa_thrd.c -DBENCH_N=10000000 -I.-nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}675 @${CC} $(srcdir)/creation/cfa_thrd.c -DBENCH_N=10000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 661 676 662 677 creation-upp_coroutine$(EXEEXT): 663 @u++ creation/upp_cor.cc -DBENCH_N=50000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}678 @u++ $(srcdir)/creation/upp_cor.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 664 679 665 680 creation-upp_thread$(EXEEXT): 666 @u++ creation/upp_thrd.cc -DBENCH_N=50000000 -I.-nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}681 @u++ $(srcdir)/creation/upp_thrd.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags} 667 682 668 683 creation-pthread$(EXEEXT): 669 @@BACKEND_CC@ creation/pthreads.c -DBENCH_N=250000 -I.-lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}684 @@BACKEND_CC@ $(srcdir)/creation/pthreads.c -DBENCH_N=250000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags} 670 685 671 686 creation-goroutine$(EXEEXT): 672 @go build -o a.out creation/goroutine.go687 @go build -o a.out $(srcdir)/creation/goroutine.go 673 688 674 689 creation-java_thread$(EXEEXT): 675 @javac creation/JavaThread.java690 @javac $(srcdir)/creation/JavaThread.java 676 691 @echo "#!/bin/sh" > a.out 677 692 @echo "cd creation && java JavaThread" >> a.out … … 689 704 690 705 compile-array$(EXEEXT): 691 @${CC} -quiet -fsyntax-only -w ../tests/array.c@CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}706 @${CC} -quiet -fsyntax-only -w $(testdir)/array.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 692 707 693 708 compile-attributes$(EXEEXT): 694 @${CC} -quiet -fsyntax-only -w ../tests/attributes.c@CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}709 @${CC} -quiet -fsyntax-only -w $(testdir)/attributes.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 695 710 696 711 compile-empty$(EXEEXT): 697 @${CC} -quiet -fsyntax-only -w compile/empty.c@CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}712 @${CC} -quiet -fsyntax-only -w $(srcdir)/compile/empty.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 698 713 699 714 compile-expression$(EXEEXT): 700 @${CC} -quiet -fsyntax-only -w ../tests/expression.c@CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}715 @${CC} -quiet -fsyntax-only -w $(testdir)/expression.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 701 716 702 717 compile-io$(EXEEXT): 703 @${CC} -quiet -fsyntax-only -w ../tests/io1.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}718 @${CC} -quiet -fsyntax-only -w $(testdir)/io1.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 704 719 705 720 compile-monitor$(EXEEXT): 706 @${CC} -quiet -fsyntax-only -w ../tests/concurrent/monitor.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}721 @${CC} -quiet -fsyntax-only -w $(testdir)/concurrent/monitor.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 707 722 708 723 compile-operators$(EXEEXT): 709 @${CC} -quiet -fsyntax-only -w ../tests/operators.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}724 @${CC} -quiet -fsyntax-only -w $(testdir)/operators.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 710 725 711 726 compile-thread$(EXEEXT): 712 @${CC} -quiet -fsyntax-only -w ../tests/concurrent/thread.c@CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}727 @${CC} -quiet -fsyntax-only -w $(testdir)/concurrent/thread.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 713 728 714 729 compile-typeof$(EXEEXT): 715 @${CC} -quiet -fsyntax-only -w ../tests/typeof.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}730 @${CC} -quiet -fsyntax-only -w $(testdir)/typeof.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} 716 731 717 732 # Tell versions [3.59,3.63) of GNU make to not export all variables. -
src/config.h.in
rd1e0979 r3bbd012 1 /* config.h.in. Generated from configure.ac by autoheader. */1 /* src/config.h.in. Generated from configure.ac by autoheader. */ 2 2 3 3 /* Location of include files. */ -
src/driver/Makefile.am
rd1e0979 r3bbd012 28 28 endif 29 29 30 # don't install cfa directly 30 31 noinst_PROGRAMS = cfa 31 cfa_SOURCES = cfa.cc32 32 33 # use 33 34 install-exec-hook: 34 35 @test -z "$(CFA_BINDIR)" || $(MKDIR_P) "$(CFA_BINDIR)" … … 40 41 cd "$(CFA_BINDIR)" && rm -f $(CFA_NAME) 41 42 43 cfa_SOURCES = cfa.cc 44 42 45 # put into lib for now 43 46 cc1libdir = ${CFA_LIBDIR} -
src/driver/Makefile.in
rd1e0979 r3bbd012 221 221 LTLIBOBJS = @LTLIBOBJS@ 222 222 MACHINE_TYPE = @MACHINE_TYPE@ 223 MAINT = @MAINT@224 223 MAKEINFO = @MAKEINFO@ 225 224 MKDIR_P = @MKDIR_P@ … … 306 305 .SUFFIXES: 307 306 .SUFFIXES: .cc .o .obj 308 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@$(srcdir)/Makefile.am $(am__configure_deps)307 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) 309 308 @for dep in $?; do \ 310 309 case '$(am__configure_deps)' in \ … … 330 329 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 331 330 332 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@$(am__configure_deps)331 $(top_srcdir)/configure: $(am__configure_deps) 333 332 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 334 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@$(am__aclocal_m4_deps)333 $(ACLOCAL_M4): $(am__aclocal_m4_deps) 335 334 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 336 335 $(am__aclocal_m4_deps): … … 626 625 627 626 627 # use 628 628 install-exec-hook: 629 629 @test -z "$(CFA_BINDIR)" || $(MKDIR_P) "$(CFA_BINDIR)" -
src/driver/cc1.cc
rd1e0979 r3bbd012 10 10 // Created On : Fri Aug 26 14:23:51 2005 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Fri Jul 13 17:40:10201813 // Update Count : 11 012 // Last Modified On : Thu Jul 19 10:46:11 2018 13 // Update Count : 111 14 14 // 15 15 … … 454 454 args[nargs] = argv[i]; // pass the argument along 455 455 nargs += 1; 456 #ifdef __DEBUG_H__456 #ifdef __DEBUG_H__ 457 457 cerr << "arg:\"" << argv[i] << "\"" << endl; 458 #endif // __DEBUG_H__458 #endif // __DEBUG_H__ 459 459 } // if 460 460 } // if -
src/driver/cfa.cc
rd1e0979 r3bbd012 343 343 args[nargs] = "--undefined=__cfaabi_interpose_startup"; 344 344 nargs += 1; 345 args[nargs] = "-Xlinker"; 346 nargs += 1; 347 args[nargs] = "--undefined=__cfaabi_appready_startup"; 348 nargs += 1; 345 349 346 350 // include the cfa library in case it's needed -
src/examples/Makefile.in
rd1e0979 r3bbd012 231 231 LTLIBOBJS = @LTLIBOBJS@ 232 232 MACHINE_TYPE = @MACHINE_TYPE@ 233 MAINT = @MAINT@234 233 MAKEINFO = @MAKEINFO@ 235 234 MKDIR_P = @MKDIR_P@ … … 310 309 .SUFFIXES: 311 310 .SUFFIXES: .c .o .obj 312 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@$(srcdir)/Makefile.am $(am__configure_deps)311 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) 313 312 @for dep in $?; do \ 314 313 case '$(am__configure_deps)' in \ … … 334 333 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 335 334 336 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@$(am__configure_deps)335 $(top_srcdir)/configure: $(am__configure_deps) 337 336 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 338 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@$(am__aclocal_m4_deps)337 $(ACLOCAL_M4): $(am__aclocal_m4_deps) 339 338 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 340 339 $(am__aclocal_m4_deps): -
src/libcfa/Makefile.am
rd1e0979 r3bbd012 11 11 ## Created On : Sun May 31 08:54:01 2015 12 12 ## Last Modified By : Peter A. Buhr 13 ## Last Modified On : T hu Jul 12 08:04:35201814 ## Update Count : 2 3413 ## Last Modified On : Tue Jul 24 17:25:39 2018 14 ## Update Count : 240 15 15 ############################################################################### 16 16 … … 36 36 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ -D__CFA_DEBUG__ -Wall -O0 -c -o $@ $< 37 37 38 EXTRA_FLAGS = -g -Wall -Wno-unused-function -imacros libcfa-prelude.c @CFA_FLAGS@ 38 EXTRA_FLAGS = -g -Wall -Wno-unused-function -imacros libcfa-prelude.c @CFA_FLAGS@ $(DEFAULT_INCLUDES) 39 39 40 40 AM_CCASFLAGS = @CFA_FLAGS@ … … 43 43 #use -no-include-stdhdr to prevent rebuild cycles 44 44 #The built sources must not depend on the installed headers 45 CFLAGS = -quiet -no-include-stdhdr -I${abs_top_srcdir}/src/libcfa/stdhdr -XCFA -t -B${abs_top_ srcdir}/src/driver ${EXTRA_FLAGS}46 CC = ${abs_top_ srcdir}/src/driver/cfa45 CFLAGS = -quiet -no-include-stdhdr -I${abs_top_srcdir}/src/libcfa/stdhdr -XCFA -t -B${abs_top_builddir}/src/driver ${EXTRA_FLAGS} 46 CC = ${abs_top_builddir}/src/driver/cfa 47 47 48 48 headers = fstream iostream iterator limits rational time stdlib common \ … … 55 55 56 56 libobjs = ${headers:=.o} 57 libsrc = libcfa-prelude.c interpose.c bits/debug.c ${headers:=.c}\58 assert.c exception.c virtual.c57 libsrc = libcfa-prelude.c startup.c interpose.c bits/debug.c assert.c exception.c virtual.c heap.c \ 58 ${headers:=.c} 59 59 60 60 # not all platforms support concurrency, add option do disable it … … 64 64 65 65 # extensionless header files are overridden by -o flag in default makerule => explicitly override default rule to silently do nothing 66 # SKULLDUGGERY in order to make sure this isn't called make the rule always fail but also create a rule for headers 66 67 % : %.c 67 @true 68 echo "Dummy rule, should never be called" 69 false 70 71 # This rule should always match headers and since it has no prerequisite it will never be called 72 $(addprefix $(srcdir)/,$(headers)): 73 echo "Dummy rule, should never be called" 74 false 68 75 69 76 concurrency/libcfa_a-invoke.o : concurrency/invoke.c … … 92 99 libcfa_d_a_CFLAGS = -debug -O0 #No need for __CFA_DEBUG__ since we pass -debug 93 100 94 stdhdr = ${shell find stdhdr -type f -printf "%p "}101 stdhdr = ${shell find ${srcdir}/stdhdr -type f -printf "%p "} 95 102 96 103 cfa_includedir = $(CFA_INCDIR) -
src/libcfa/Makefile.in
rd1e0979 r3bbd012 148 148 libcfa_d_a_AR = $(AR) $(ARFLAGS) 149 149 libcfa_d_a_LIBADD = 150 am__libcfa_d_a_SOURCES_DIST = libcfa-prelude.c interpose.c \ 151 bits/debug.c fstream.c iostream.c iterator.c limits.c \ 152 rational.c time.c stdlib.c common.c containers/maybe.c \ 153 containers/pair.c containers/result.c containers/vector.c \ 150 am__libcfa_d_a_SOURCES_DIST = libcfa-prelude.c startup.c interpose.c \ 151 bits/debug.c assert.c exception.c virtual.c heap.c fstream.c \ 152 iostream.c iterator.c limits.c rational.c time.c stdlib.c \ 153 common.c containers/maybe.c containers/pair.c \ 154 containers/result.c containers/vector.c \ 154 155 concurrency/coroutine.c concurrency/thread.c \ 155 156 concurrency/kernel.c concurrency/monitor.c concurrency/mutex.c \ 156 assert.c exception.c virtual.c \157 157 concurrency/CtxSwitch-@MACHINE_TYPE@.S concurrency/alarm.c \ 158 158 concurrency/invoke.c concurrency/preemption.c … … 177 177 @BUILD_CONCURRENCY_TRUE@ concurrency/libcfa_d_a-preemption.$(OBJEXT) 178 178 am__objects_4 = libcfa_d_a-libcfa-prelude.$(OBJEXT) \ 179 libcfa_d_a- interpose.$(OBJEXT) bits/libcfa_d_a-debug.$(OBJEXT) \180 $(am__objects_2) libcfa_d_a-assert.$(OBJEXT) \179 libcfa_d_a-startup.$(OBJEXT) libcfa_d_a-interpose.$(OBJEXT) \ 180 bits/libcfa_d_a-debug.$(OBJEXT) libcfa_d_a-assert.$(OBJEXT) \ 181 181 libcfa_d_a-exception.$(OBJEXT) libcfa_d_a-virtual.$(OBJEXT) \ 182 $(am__objects_3)182 libcfa_d_a-heap.$(OBJEXT) $(am__objects_2) $(am__objects_3) 183 183 am_libcfa_d_a_OBJECTS = $(am__objects_4) 184 184 libcfa_d_a_OBJECTS = $(am_libcfa_d_a_OBJECTS) 185 185 libcfa_a_AR = $(AR) $(ARFLAGS) 186 186 libcfa_a_LIBADD = 187 am__libcfa_a_SOURCES_DIST = libcfa-prelude.c interpose.c bits/debug.c \ 188 fstream.c iostream.c iterator.c limits.c rational.c time.c \ 189 stdlib.c common.c containers/maybe.c containers/pair.c \ 187 am__libcfa_a_SOURCES_DIST = libcfa-prelude.c startup.c interpose.c \ 188 bits/debug.c assert.c exception.c virtual.c heap.c fstream.c \ 189 iostream.c iterator.c limits.c rational.c time.c stdlib.c \ 190 common.c containers/maybe.c containers/pair.c \ 190 191 containers/result.c containers/vector.c \ 191 192 concurrency/coroutine.c concurrency/thread.c \ 192 193 concurrency/kernel.c concurrency/monitor.c concurrency/mutex.c \ 193 assert.c exception.c virtual.c \194 194 concurrency/CtxSwitch-@MACHINE_TYPE@.S concurrency/alarm.c \ 195 195 concurrency/invoke.c concurrency/preemption.c … … 212 212 @BUILD_CONCURRENCY_TRUE@ concurrency/libcfa_a-preemption.$(OBJEXT) 213 213 am__objects_8 = libcfa_a-libcfa-prelude.$(OBJEXT) \ 214 libcfa_a- interpose.$(OBJEXT) bits/libcfa_a-debug.$(OBJEXT) \215 $(am__objects_6) libcfa_a-assert.$(OBJEXT) \214 libcfa_a-startup.$(OBJEXT) libcfa_a-interpose.$(OBJEXT) \ 215 bits/libcfa_a-debug.$(OBJEXT) libcfa_a-assert.$(OBJEXT) \ 216 216 libcfa_a-exception.$(OBJEXT) libcfa_a-virtual.$(OBJEXT) \ 217 $(am__objects_7)217 libcfa_a-heap.$(OBJEXT) $(am__objects_6) $(am__objects_7) 218 218 am_libcfa_a_OBJECTS = $(am__objects_8) 219 219 libcfa_a_OBJECTS = $(am_libcfa_a_OBJECTS) … … 268 268 containers/result containers/vector concurrency/coroutine \ 269 269 concurrency/thread concurrency/kernel concurrency/monitor \ 270 concurrency/mutex ${shell find stdhdr -type f -printf "%p "} \ 271 math gmp time_t.h bits/align.h bits/containers.h bits/defs.h \ 272 bits/debug.h bits/locks.h concurrency/invoke.h 270 concurrency/mutex ${shell find ${srcdir}/stdhdr -type f \ 271 -printf "%p "} math gmp time_t.h bits/align.h \ 272 bits/containers.h bits/defs.h bits/debug.h bits/locks.h \ 273 concurrency/invoke.h 273 274 HEADERS = $(nobase_cfa_include_HEADERS) 274 275 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) … … 302 303 AWK = @AWK@ 303 304 BACKEND_CC = @BACKEND_CC@ 304 CC = ${abs_top_ srcdir}/src/driver/cfa305 CC = ${abs_top_builddir}/src/driver/cfa 305 306 CCAS = @CCAS@ 306 307 CCASDEPMODE = @CCASDEPMODE@ … … 318 319 #use -no-include-stdhdr to prevent rebuild cycles 319 320 #The built sources must not depend on the installed headers 320 CFLAGS = -quiet -no-include-stdhdr -I${abs_top_srcdir}/src/libcfa/stdhdr -XCFA -t -B${abs_top_ srcdir}/src/driver ${EXTRA_FLAGS}321 CFLAGS = -quiet -no-include-stdhdr -I${abs_top_srcdir}/src/libcfa/stdhdr -XCFA -t -B${abs_top_builddir}/src/driver ${EXTRA_FLAGS} 321 322 CPP = @CPP@ 322 323 CPPFLAGS = @CPPFLAGS@ … … 346 347 LTLIBOBJS = @LTLIBOBJS@ 347 348 MACHINE_TYPE = @MACHINE_TYPE@ 348 MAINT = @MAINT@349 349 MAKEINFO = @MAKEINFO@ 350 350 MKDIR_P = @MKDIR_P@ … … 422 422 ARFLAGS = cr 423 423 lib_LIBRARIES = $(am__append_1) $(am__append_2) 424 EXTRA_FLAGS = -g -Wall -Wno-unused-function -imacros libcfa-prelude.c @CFA_FLAGS@ 424 EXTRA_FLAGS = -g -Wall -Wno-unused-function -imacros libcfa-prelude.c @CFA_FLAGS@ $(DEFAULT_INCLUDES) 425 425 AM_CCASFLAGS = @CFA_FLAGS@ 426 426 headers = fstream iostream iterator limits rational time stdlib common \ … … 428 428 containers/vector $(am__append_3) 429 429 libobjs = ${headers:=.o} 430 libsrc = libcfa-prelude.c interpose.c bits/debug.c ${headers:=.c}\431 assert.c exception.c virtual.c$(am__append_4)430 libsrc = libcfa-prelude.c startup.c interpose.c bits/debug.c assert.c \ 431 exception.c virtual.c heap.c ${headers:=.c} $(am__append_4) 432 432 libcfa_a_SOURCES = ${libsrc} 433 433 libcfa_a_CFLAGS = -nodebug -O2 434 434 libcfa_d_a_SOURCES = ${libsrc} 435 435 libcfa_d_a_CFLAGS = -debug -O0 #No need for __CFA_DEBUG__ since we pass -debug 436 stdhdr = ${shell find stdhdr -type f -printf "%p "}436 stdhdr = ${shell find ${srcdir}/stdhdr -type f -printf "%p "} 437 437 cfa_includedir = $(CFA_INCDIR) 438 438 nobase_cfa_include_HEADERS = \ … … 454 454 .SUFFIXES: 455 455 .SUFFIXES: .S .c .o .obj 456 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@$(srcdir)/Makefile.am $(am__configure_deps)456 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) 457 457 @for dep in $?; do \ 458 458 case '$(am__configure_deps)' in \ … … 478 478 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 479 479 480 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@$(am__configure_deps)480 $(top_srcdir)/configure: $(am__configure_deps) 481 481 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 482 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@$(am__aclocal_m4_deps)482 $(ACLOCAL_M4): $(am__aclocal_m4_deps) 483 483 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 484 484 $(am__aclocal_m4_deps): … … 614 614 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_a-exception.Po@am__quote@ 615 615 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_a-fstream.Po@am__quote@ 616 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_a-heap.Po@am__quote@ 616 617 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_a-interpose.Po@am__quote@ 617 618 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_a-iostream.Po@am__quote@ … … 620 621 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_a-limits.Po@am__quote@ 621 622 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_a-rational.Po@am__quote@ 623 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_a-startup.Po@am__quote@ 622 624 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_a-stdlib.Po@am__quote@ 623 625 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_a-time.Po@am__quote@ … … 627 629 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_d_a-exception.Po@am__quote@ 628 630 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_d_a-fstream.Po@am__quote@ 631 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_d_a-heap.Po@am__quote@ 629 632 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_d_a-interpose.Po@am__quote@ 630 633 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_d_a-iostream.Po@am__quote@ … … 633 636 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_d_a-limits.Po@am__quote@ 634 637 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_d_a-rational.Po@am__quote@ 638 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_d_a-startup.Po@am__quote@ 635 639 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_d_a-stdlib.Po@am__quote@ 636 640 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcfa_d_a-time.Po@am__quote@ … … 703 707 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-libcfa-prelude.obj `if test -f 'libcfa-prelude.c'; then $(CYGPATH_W) 'libcfa-prelude.c'; else $(CYGPATH_W) '$(srcdir)/libcfa-prelude.c'; fi` 704 708 709 libcfa_d_a-startup.o: startup.c 710 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-startup.o -MD -MP -MF $(DEPDIR)/libcfa_d_a-startup.Tpo -c -o libcfa_d_a-startup.o `test -f 'startup.c' || echo '$(srcdir)/'`startup.c 711 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-startup.Tpo $(DEPDIR)/libcfa_d_a-startup.Po 712 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='startup.c' object='libcfa_d_a-startup.o' libtool=no @AMDEPBACKSLASH@ 713 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 714 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-startup.o `test -f 'startup.c' || echo '$(srcdir)/'`startup.c 715 716 libcfa_d_a-startup.obj: startup.c 717 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-startup.obj -MD -MP -MF $(DEPDIR)/libcfa_d_a-startup.Tpo -c -o libcfa_d_a-startup.obj `if test -f 'startup.c'; then $(CYGPATH_W) 'startup.c'; else $(CYGPATH_W) '$(srcdir)/startup.c'; fi` 718 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-startup.Tpo $(DEPDIR)/libcfa_d_a-startup.Po 719 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='startup.c' object='libcfa_d_a-startup.obj' libtool=no @AMDEPBACKSLASH@ 720 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 721 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-startup.obj `if test -f 'startup.c'; then $(CYGPATH_W) 'startup.c'; else $(CYGPATH_W) '$(srcdir)/startup.c'; fi` 722 705 723 libcfa_d_a-interpose.o: interpose.c 706 724 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-interpose.o -MD -MP -MF $(DEPDIR)/libcfa_d_a-interpose.Tpo -c -o libcfa_d_a-interpose.o `test -f 'interpose.c' || echo '$(srcdir)/'`interpose.c … … 731 749 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o bits/libcfa_d_a-debug.obj `if test -f 'bits/debug.c'; then $(CYGPATH_W) 'bits/debug.c'; else $(CYGPATH_W) '$(srcdir)/bits/debug.c'; fi` 732 750 751 libcfa_d_a-assert.o: assert.c 752 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-assert.o -MD -MP -MF $(DEPDIR)/libcfa_d_a-assert.Tpo -c -o libcfa_d_a-assert.o `test -f 'assert.c' || echo '$(srcdir)/'`assert.c 753 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-assert.Tpo $(DEPDIR)/libcfa_d_a-assert.Po 754 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='assert.c' object='libcfa_d_a-assert.o' libtool=no @AMDEPBACKSLASH@ 755 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 756 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-assert.o `test -f 'assert.c' || echo '$(srcdir)/'`assert.c 757 758 libcfa_d_a-assert.obj: assert.c 759 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-assert.obj -MD -MP -MF $(DEPDIR)/libcfa_d_a-assert.Tpo -c -o libcfa_d_a-assert.obj `if test -f 'assert.c'; then $(CYGPATH_W) 'assert.c'; else $(CYGPATH_W) '$(srcdir)/assert.c'; fi` 760 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-assert.Tpo $(DEPDIR)/libcfa_d_a-assert.Po 761 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='assert.c' object='libcfa_d_a-assert.obj' libtool=no @AMDEPBACKSLASH@ 762 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 763 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-assert.obj `if test -f 'assert.c'; then $(CYGPATH_W) 'assert.c'; else $(CYGPATH_W) '$(srcdir)/assert.c'; fi` 764 765 libcfa_d_a-exception.obj: exception.c 766 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-exception.obj -MD -MP -MF $(DEPDIR)/libcfa_d_a-exception.Tpo -c -o libcfa_d_a-exception.obj `if test -f 'exception.c'; then $(CYGPATH_W) 'exception.c'; else $(CYGPATH_W) '$(srcdir)/exception.c'; fi` 767 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-exception.Tpo $(DEPDIR)/libcfa_d_a-exception.Po 768 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='exception.c' object='libcfa_d_a-exception.obj' libtool=no @AMDEPBACKSLASH@ 769 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 770 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-exception.obj `if test -f 'exception.c'; then $(CYGPATH_W) 'exception.c'; else $(CYGPATH_W) '$(srcdir)/exception.c'; fi` 771 772 libcfa_d_a-virtual.obj: virtual.c 773 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-virtual.obj -MD -MP -MF $(DEPDIR)/libcfa_d_a-virtual.Tpo -c -o libcfa_d_a-virtual.obj `if test -f 'virtual.c'; then $(CYGPATH_W) 'virtual.c'; else $(CYGPATH_W) '$(srcdir)/virtual.c'; fi` 774 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-virtual.Tpo $(DEPDIR)/libcfa_d_a-virtual.Po 775 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='virtual.c' object='libcfa_d_a-virtual.obj' libtool=no @AMDEPBACKSLASH@ 776 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 777 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-virtual.obj `if test -f 'virtual.c'; then $(CYGPATH_W) 'virtual.c'; else $(CYGPATH_W) '$(srcdir)/virtual.c'; fi` 778 779 libcfa_d_a-heap.o: heap.c 780 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-heap.o -MD -MP -MF $(DEPDIR)/libcfa_d_a-heap.Tpo -c -o libcfa_d_a-heap.o `test -f 'heap.c' || echo '$(srcdir)/'`heap.c 781 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-heap.Tpo $(DEPDIR)/libcfa_d_a-heap.Po 782 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='heap.c' object='libcfa_d_a-heap.o' libtool=no @AMDEPBACKSLASH@ 783 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 784 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-heap.o `test -f 'heap.c' || echo '$(srcdir)/'`heap.c 785 786 libcfa_d_a-heap.obj: heap.c 787 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-heap.obj -MD -MP -MF $(DEPDIR)/libcfa_d_a-heap.Tpo -c -o libcfa_d_a-heap.obj `if test -f 'heap.c'; then $(CYGPATH_W) 'heap.c'; else $(CYGPATH_W) '$(srcdir)/heap.c'; fi` 788 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-heap.Tpo $(DEPDIR)/libcfa_d_a-heap.Po 789 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='heap.c' object='libcfa_d_a-heap.obj' libtool=no @AMDEPBACKSLASH@ 790 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 791 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-heap.obj `if test -f 'heap.c'; then $(CYGPATH_W) 'heap.c'; else $(CYGPATH_W) '$(srcdir)/heap.c'; fi` 792 733 793 libcfa_d_a-fstream.o: fstream.c 734 794 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-fstream.o -MD -MP -MF $(DEPDIR)/libcfa_d_a-fstream.Tpo -c -o libcfa_d_a-fstream.o `test -f 'fstream.c' || echo '$(srcdir)/'`fstream.c … … 969 1029 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o concurrency/libcfa_d_a-mutex.obj `if test -f 'concurrency/mutex.c'; then $(CYGPATH_W) 'concurrency/mutex.c'; else $(CYGPATH_W) '$(srcdir)/concurrency/mutex.c'; fi` 970 1030 971 libcfa_d_a-assert.o: assert.c972 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-assert.o -MD -MP -MF $(DEPDIR)/libcfa_d_a-assert.Tpo -c -o libcfa_d_a-assert.o `test -f 'assert.c' || echo '$(srcdir)/'`assert.c973 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-assert.Tpo $(DEPDIR)/libcfa_d_a-assert.Po974 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='assert.c' object='libcfa_d_a-assert.o' libtool=no @AMDEPBACKSLASH@975 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@976 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-assert.o `test -f 'assert.c' || echo '$(srcdir)/'`assert.c977 978 libcfa_d_a-assert.obj: assert.c979 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-assert.obj -MD -MP -MF $(DEPDIR)/libcfa_d_a-assert.Tpo -c -o libcfa_d_a-assert.obj `if test -f 'assert.c'; then $(CYGPATH_W) 'assert.c'; else $(CYGPATH_W) '$(srcdir)/assert.c'; fi`980 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-assert.Tpo $(DEPDIR)/libcfa_d_a-assert.Po981 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='assert.c' object='libcfa_d_a-assert.obj' libtool=no @AMDEPBACKSLASH@982 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@983 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-assert.obj `if test -f 'assert.c'; then $(CYGPATH_W) 'assert.c'; else $(CYGPATH_W) '$(srcdir)/assert.c'; fi`984 985 libcfa_d_a-exception.obj: exception.c986 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-exception.obj -MD -MP -MF $(DEPDIR)/libcfa_d_a-exception.Tpo -c -o libcfa_d_a-exception.obj `if test -f 'exception.c'; then $(CYGPATH_W) 'exception.c'; else $(CYGPATH_W) '$(srcdir)/exception.c'; fi`987 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-exception.Tpo $(DEPDIR)/libcfa_d_a-exception.Po988 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='exception.c' object='libcfa_d_a-exception.obj' libtool=no @AMDEPBACKSLASH@989 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@990 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-exception.obj `if test -f 'exception.c'; then $(CYGPATH_W) 'exception.c'; else $(CYGPATH_W) '$(srcdir)/exception.c'; fi`991 992 libcfa_d_a-virtual.obj: virtual.c993 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT libcfa_d_a-virtual.obj -MD -MP -MF $(DEPDIR)/libcfa_d_a-virtual.Tpo -c -o libcfa_d_a-virtual.obj `if test -f 'virtual.c'; then $(CYGPATH_W) 'virtual.c'; else $(CYGPATH_W) '$(srcdir)/virtual.c'; fi`994 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_d_a-virtual.Tpo $(DEPDIR)/libcfa_d_a-virtual.Po995 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='virtual.c' object='libcfa_d_a-virtual.obj' libtool=no @AMDEPBACKSLASH@996 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@997 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -c -o libcfa_d_a-virtual.obj `if test -f 'virtual.c'; then $(CYGPATH_W) 'virtual.c'; else $(CYGPATH_W) '$(srcdir)/virtual.c'; fi`998 999 1031 concurrency/libcfa_d_a-alarm.o: concurrency/alarm.c 1000 1032 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_d_a_CFLAGS) $(CFLAGS) -MT concurrency/libcfa_d_a-alarm.o -MD -MP -MF concurrency/$(DEPDIR)/libcfa_d_a-alarm.Tpo -c -o concurrency/libcfa_d_a-alarm.o `test -f 'concurrency/alarm.c' || echo '$(srcdir)/'`concurrency/alarm.c … … 1039 1071 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-libcfa-prelude.obj `if test -f 'libcfa-prelude.c'; then $(CYGPATH_W) 'libcfa-prelude.c'; else $(CYGPATH_W) '$(srcdir)/libcfa-prelude.c'; fi` 1040 1072 1073 libcfa_a-startup.o: startup.c 1074 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-startup.o -MD -MP -MF $(DEPDIR)/libcfa_a-startup.Tpo -c -o libcfa_a-startup.o `test -f 'startup.c' || echo '$(srcdir)/'`startup.c 1075 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-startup.Tpo $(DEPDIR)/libcfa_a-startup.Po 1076 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='startup.c' object='libcfa_a-startup.o' libtool=no @AMDEPBACKSLASH@ 1077 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 1078 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-startup.o `test -f 'startup.c' || echo '$(srcdir)/'`startup.c 1079 1080 libcfa_a-startup.obj: startup.c 1081 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-startup.obj -MD -MP -MF $(DEPDIR)/libcfa_a-startup.Tpo -c -o libcfa_a-startup.obj `if test -f 'startup.c'; then $(CYGPATH_W) 'startup.c'; else $(CYGPATH_W) '$(srcdir)/startup.c'; fi` 1082 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-startup.Tpo $(DEPDIR)/libcfa_a-startup.Po 1083 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='startup.c' object='libcfa_a-startup.obj' libtool=no @AMDEPBACKSLASH@ 1084 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 1085 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-startup.obj `if test -f 'startup.c'; then $(CYGPATH_W) 'startup.c'; else $(CYGPATH_W) '$(srcdir)/startup.c'; fi` 1086 1041 1087 libcfa_a-interpose.o: interpose.c 1042 1088 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-interpose.o -MD -MP -MF $(DEPDIR)/libcfa_a-interpose.Tpo -c -o libcfa_a-interpose.o `test -f 'interpose.c' || echo '$(srcdir)/'`interpose.c … … 1067 1113 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o bits/libcfa_a-debug.obj `if test -f 'bits/debug.c'; then $(CYGPATH_W) 'bits/debug.c'; else $(CYGPATH_W) '$(srcdir)/bits/debug.c'; fi` 1068 1114 1115 libcfa_a-assert.o: assert.c 1116 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-assert.o -MD -MP -MF $(DEPDIR)/libcfa_a-assert.Tpo -c -o libcfa_a-assert.o `test -f 'assert.c' || echo '$(srcdir)/'`assert.c 1117 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-assert.Tpo $(DEPDIR)/libcfa_a-assert.Po 1118 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='assert.c' object='libcfa_a-assert.o' libtool=no @AMDEPBACKSLASH@ 1119 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 1120 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-assert.o `test -f 'assert.c' || echo '$(srcdir)/'`assert.c 1121 1122 libcfa_a-assert.obj: assert.c 1123 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-assert.obj -MD -MP -MF $(DEPDIR)/libcfa_a-assert.Tpo -c -o libcfa_a-assert.obj `if test -f 'assert.c'; then $(CYGPATH_W) 'assert.c'; else $(CYGPATH_W) '$(srcdir)/assert.c'; fi` 1124 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-assert.Tpo $(DEPDIR)/libcfa_a-assert.Po 1125 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='assert.c' object='libcfa_a-assert.obj' libtool=no @AMDEPBACKSLASH@ 1126 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 1127 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-assert.obj `if test -f 'assert.c'; then $(CYGPATH_W) 'assert.c'; else $(CYGPATH_W) '$(srcdir)/assert.c'; fi` 1128 1129 libcfa_a-exception.obj: exception.c 1130 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-exception.obj -MD -MP -MF $(DEPDIR)/libcfa_a-exception.Tpo -c -o libcfa_a-exception.obj `if test -f 'exception.c'; then $(CYGPATH_W) 'exception.c'; else $(CYGPATH_W) '$(srcdir)/exception.c'; fi` 1131 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-exception.Tpo $(DEPDIR)/libcfa_a-exception.Po 1132 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='exception.c' object='libcfa_a-exception.obj' libtool=no @AMDEPBACKSLASH@ 1133 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 1134 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-exception.obj `if test -f 'exception.c'; then $(CYGPATH_W) 'exception.c'; else $(CYGPATH_W) '$(srcdir)/exception.c'; fi` 1135 1136 libcfa_a-virtual.obj: virtual.c 1137 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-virtual.obj -MD -MP -MF $(DEPDIR)/libcfa_a-virtual.Tpo -c -o libcfa_a-virtual.obj `if test -f 'virtual.c'; then $(CYGPATH_W) 'virtual.c'; else $(CYGPATH_W) '$(srcdir)/virtual.c'; fi` 1138 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-virtual.Tpo $(DEPDIR)/libcfa_a-virtual.Po 1139 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='virtual.c' object='libcfa_a-virtual.obj' libtool=no @AMDEPBACKSLASH@ 1140 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 1141 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-virtual.obj `if test -f 'virtual.c'; then $(CYGPATH_W) 'virtual.c'; else $(CYGPATH_W) '$(srcdir)/virtual.c'; fi` 1142 1143 libcfa_a-heap.o: heap.c 1144 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-heap.o -MD -MP -MF $(DEPDIR)/libcfa_a-heap.Tpo -c -o libcfa_a-heap.o `test -f 'heap.c' || echo '$(srcdir)/'`heap.c 1145 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-heap.Tpo $(DEPDIR)/libcfa_a-heap.Po 1146 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='heap.c' object='libcfa_a-heap.o' libtool=no @AMDEPBACKSLASH@ 1147 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 1148 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-heap.o `test -f 'heap.c' || echo '$(srcdir)/'`heap.c 1149 1150 libcfa_a-heap.obj: heap.c 1151 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-heap.obj -MD -MP -MF $(DEPDIR)/libcfa_a-heap.Tpo -c -o libcfa_a-heap.obj `if test -f 'heap.c'; then $(CYGPATH_W) 'heap.c'; else $(CYGPATH_W) '$(srcdir)/heap.c'; fi` 1152 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-heap.Tpo $(DEPDIR)/libcfa_a-heap.Po 1153 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='heap.c' object='libcfa_a-heap.obj' libtool=no @AMDEPBACKSLASH@ 1154 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 1155 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-heap.obj `if test -f 'heap.c'; then $(CYGPATH_W) 'heap.c'; else $(CYGPATH_W) '$(srcdir)/heap.c'; fi` 1156 1069 1157 libcfa_a-fstream.o: fstream.c 1070 1158 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-fstream.o -MD -MP -MF $(DEPDIR)/libcfa_a-fstream.Tpo -c -o libcfa_a-fstream.o `test -f 'fstream.c' || echo '$(srcdir)/'`fstream.c … … 1304 1392 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 1305 1393 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o concurrency/libcfa_a-mutex.obj `if test -f 'concurrency/mutex.c'; then $(CYGPATH_W) 'concurrency/mutex.c'; else $(CYGPATH_W) '$(srcdir)/concurrency/mutex.c'; fi` 1306 1307 libcfa_a-assert.o: assert.c1308 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-assert.o -MD -MP -MF $(DEPDIR)/libcfa_a-assert.Tpo -c -o libcfa_a-assert.o `test -f 'assert.c' || echo '$(srcdir)/'`assert.c1309 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-assert.Tpo $(DEPDIR)/libcfa_a-assert.Po1310 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='assert.c' object='libcfa_a-assert.o' libtool=no @AMDEPBACKSLASH@1311 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@1312 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-assert.o `test -f 'assert.c' || echo '$(srcdir)/'`assert.c1313 1314 libcfa_a-assert.obj: assert.c1315 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-assert.obj -MD -MP -MF $(DEPDIR)/libcfa_a-assert.Tpo -c -o libcfa_a-assert.obj `if test -f 'assert.c'; then $(CYGPATH_W) 'assert.c'; else $(CYGPATH_W) '$(srcdir)/assert.c'; fi`1316 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-assert.Tpo $(DEPDIR)/libcfa_a-assert.Po1317 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='assert.c' object='libcfa_a-assert.obj' libtool=no @AMDEPBACKSLASH@1318 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@1319 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-assert.obj `if test -f 'assert.c'; then $(CYGPATH_W) 'assert.c'; else $(CYGPATH_W) '$(srcdir)/assert.c'; fi`1320 1321 libcfa_a-exception.obj: exception.c1322 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-exception.obj -MD -MP -MF $(DEPDIR)/libcfa_a-exception.Tpo -c -o libcfa_a-exception.obj `if test -f 'exception.c'; then $(CYGPATH_W) 'exception.c'; else $(CYGPATH_W) '$(srcdir)/exception.c'; fi`1323 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-exception.Tpo $(DEPDIR)/libcfa_a-exception.Po1324 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='exception.c' object='libcfa_a-exception.obj' libtool=no @AMDEPBACKSLASH@1325 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@1326 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-exception.obj `if test -f 'exception.c'; then $(CYGPATH_W) 'exception.c'; else $(CYGPATH_W) '$(srcdir)/exception.c'; fi`1327 1328 libcfa_a-virtual.obj: virtual.c1329 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -MT libcfa_a-virtual.obj -MD -MP -MF $(DEPDIR)/libcfa_a-virtual.Tpo -c -o libcfa_a-virtual.obj `if test -f 'virtual.c'; then $(CYGPATH_W) 'virtual.c'; else $(CYGPATH_W) '$(srcdir)/virtual.c'; fi`1330 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcfa_a-virtual.Tpo $(DEPDIR)/libcfa_a-virtual.Po1331 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='virtual.c' object='libcfa_a-virtual.obj' libtool=no @AMDEPBACKSLASH@1332 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@1333 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcfa_a_CFLAGS) $(CFLAGS) -c -o libcfa_a-virtual.obj `if test -f 'virtual.c'; then $(CYGPATH_W) 'virtual.c'; else $(CYGPATH_W) '$(srcdir)/virtual.c'; fi`1334 1394 1335 1395 concurrency/libcfa_a-alarm.o: concurrency/alarm.c … … 1616 1676 1617 1677 # extensionless header files are overridden by -o flag in default makerule => explicitly override default rule to silently do nothing 1678 # SKULLDUGGERY in order to make sure this isn't called make the rule always fail but also create a rule for headers 1618 1679 % : %.c 1619 @true 1680 echo "Dummy rule, should never be called" 1681 false 1682 1683 # This rule should always match headers and since it has no prerequisite it will never be called 1684 $(addprefix $(srcdir)/,$(headers)): 1685 echo "Dummy rule, should never be called" 1686 false 1620 1687 1621 1688 concurrency/libcfa_a-invoke.o : concurrency/invoke.c -
src/libcfa/concurrency/kernel.c
rd1e0979 r3bbd012 37 37 38 38 //Start and stop routine for the kernel, declared first to make sure they run first 39 void kernel_startup(void) __attribute__(( constructor( STARTUP_PRIORITY_KERNEL ) ));40 void kernel_shutdown(void) __attribute__(( destructor ( STARTUP_PRIORITY_KERNEL ) ));39 static void kernel_startup(void) __attribute__(( constructor( STARTUP_PRIORITY_KERNEL ) )); 40 static void kernel_shutdown(void) __attribute__(( destructor ( STARTUP_PRIORITY_KERNEL ) )); 41 41 42 42 //----------------------------------------------------------------------------- … … 133 133 134 134 // Construct the processor context of non-main processors 135 void ?{}(processorCtx_t & this, processor * proc, current_stack_info_t * info) {135 static void ?{}(processorCtx_t & this, processor * proc, current_stack_info_t * info) { 136 136 (this.__cor){ info }; 137 137 this.proc = proc; 138 138 } 139 139 140 static void start(processor * this); 140 141 void ?{}(processor & this, const char * name, cluster & cltr) with( this ) { 141 142 this.name = name; … … 186 187 // Kernel Scheduling logic 187 188 //============================================================================================= 189 static void runThread(processor * this, thread_desc * dst); 190 static void finishRunning(processor * this); 191 static void halt(processor * this); 192 188 193 //Main of the processor contexts 189 194 void main(processorCtx_t & runner) { … … 239 244 // runThread runs a thread by context switching 240 245 // from the processor coroutine to the target thread 241 void runThread(processor * this, thread_desc * dst) {246 static void runThread(processor * this, thread_desc * dst) { 242 247 assert(dst->curr_cor); 243 248 coroutine_desc * proc_cor = get_coroutine(this->runner); … … 256 261 257 262 // KERNEL_ONLY 258 void returnToKernel() {263 static void returnToKernel() { 259 264 coroutine_desc * proc_cor = get_coroutine(kernelTLS.this_processor->runner); 260 265 coroutine_desc * thrd_cor = kernelTLS.this_thread->curr_cor = kernelTLS.this_coroutine; … … 265 270 // Once a thread has finished running, some of 266 271 // its final actions must be executed from the kernel 267 void finishRunning(processor * this) with( this->finish ) {272 static void finishRunning(processor * this) with( this->finish ) { 268 273 verify( ! kernelTLS.preemption_state.enabled ); 269 274 choose( action_code ) { … … 299 304 // This is the entry point for processors (kernel threads) 300 305 // It effectively constructs a coroutine by stealing the pthread stack 301 void * CtxInvokeProcessor(void * arg) {306 static void * CtxInvokeProcessor(void * arg) { 302 307 processor * proc = (processor *) arg; 303 308 kernelTLS.this_processor = proc; … … 336 341 } 337 342 338 void start(processor * this) {343 static void start(processor * this) { 339 344 __cfaabi_dbg_print_safe("Kernel : Starting core %p\n", this); 340 345 … … 542 547 //----------------------------------------------------------------------------- 543 548 // Kernel boot procedures 544 void kernel_startup(void) {549 static void kernel_startup(void) { 545 550 verify( ! kernelTLS.preemption_state.enabled ); 546 551 __cfaabi_dbg_print_safe("Kernel : Starting\n"); … … 618 623 } 619 624 620 void kernel_shutdown(void) {625 static void kernel_shutdown(void) { 621 626 __cfaabi_dbg_print_safe("\n--------------------------------------------------\nKernel : Shutting down\n"); 622 627 … … 655 660 // Kernel Quiescing 656 661 //============================================================================================= 657 658 void halt(processor * this) with( *this ) { 662 static void halt(processor * this) with( *this ) { 659 663 // verify( ! __atomic_load_n(&do_terminate, __ATOMIC_SEQ_CST) ); 660 664 … … 683 687 // Unexpected Terminating logic 684 688 //============================================================================================= 685 686 687 689 static __spinlock_t kernel_abort_lock; 688 690 static bool kernel_abort_called = false; -
src/libcfa/concurrency/kernel_private.h
rd1e0979 r3bbd012 54 54 // Processor 55 55 void main(processorCtx_t *); 56 void start(processor * this);57 void runThread(processor * this, thread_desc * dst);58 void finishRunning(processor * this);59 void halt(processor * this);60 56 61 57 static inline void wake_fast(processor * this) { -
src/libcfa/concurrency/preemption.c
rd1e0979 r3bbd012 39 39 40 40 // FwdDeclarations : Signal handlers 41 void sigHandler_ctxSwitch( __CFA_SIGPARMS__ );42 void sigHandler_segv ( __CFA_SIGPARMS__ );43 void sigHandler_ill ( __CFA_SIGPARMS__ );44 void sigHandler_fpe ( __CFA_SIGPARMS__ );45 void sigHandler_abort ( __CFA_SIGPARMS__ );41 static void sigHandler_ctxSwitch( __CFA_SIGPARMS__ ); 42 static void sigHandler_segv ( __CFA_SIGPARMS__ ); 43 static void sigHandler_ill ( __CFA_SIGPARMS__ ); 44 static void sigHandler_fpe ( __CFA_SIGPARMS__ ); 45 static void sigHandler_abort ( __CFA_SIGPARMS__ ); 46 46 47 47 // FwdDeclarations : alarm thread main 48 void * alarm_loop( __attribute__((unused)) void * args );48 static void * alarm_loop( __attribute__((unused)) void * args ); 49 49 50 50 // Machine specific register name … … 63 63 static pthread_t alarm_thread; // pthread handle to alarm thread 64 64 65 void ?{}(event_kernel_t & this) with( this ) {65 static void ?{}(event_kernel_t & this) with( this ) { 66 66 alarms{}; 67 67 lock{}; … … 85 85 86 86 // Tick one frame of the Discrete Event Simulation for alarms 87 void tick_preemption() {87 static void tick_preemption() { 88 88 alarm_node_t * node = NULL; // Used in the while loop but cannot be declared in the while condition 89 89 alarm_list_t * alarms = &event_kernel->alarms; // Local copy for ease of reading … … 350 350 // Context switch signal handler 351 351 // Receives SIGUSR1 signal and causes the current thread to yield 352 void sigHandler_ctxSwitch( __CFA_SIGPARMS__ ) {352 static void sigHandler_ctxSwitch( __CFA_SIGPARMS__ ) { 353 353 __cfaabi_dbg_debug_do( last_interrupt = (void *)(cxt->uc_mcontext.CFA_REG_IP); ) 354 354 … … 393 393 // Main of the alarm thread 394 394 // Waits on SIGALRM and send SIGUSR1 to whom ever needs it 395 void * alarm_loop( __attribute__((unused)) void * args ) {395 static void * alarm_loop( __attribute__((unused)) void * args ) { 396 396 // Block sigalrms to control when they arrive 397 397 sigset_t mask; -
src/libcfa/concurrency/preemption.h
rd1e0979 r3bbd012 22 22 void kernel_stop_preemption(); 23 23 void update_preemption( processor * this, Duration duration ); 24 void tick_preemption();25 24 26 25 struct preemption_scope { -
src/libcfa/startup.h
rd1e0979 r3bbd012 10 10 // Created On : Wed Mar 29 15:56:41 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : T hu Jul 20 21:37:11 201713 // Update Count : 212 // Last Modified On : Tue Jul 24 16:16:37 2018 13 // Update Count : 4 14 14 // 15 15 … … 19 19 extern "C" { 20 20 enum { 21 STARTUP_PRIORITY_ CORE= 101,22 STARTUP_PRIORITY_ KERNEL= 102,23 STARTUP_PRIORITY_ MEMORY= 103,21 STARTUP_PRIORITY_MEMORY = 101, 22 STARTUP_PRIORITY_CORE = 102, 23 STARTUP_PRIORITY_KERNEL = 103, 24 24 STARTUP_PRIORITY_IOSTREAM = 104, 25 STARTUP_PRIORITY_APPREADY = 105, 25 26 }; 26 27 } 27 28 #else 28 #define STARTUP_PRIORITY_ CORE10129 #define STARTUP_PRIORITY_ KERNEL10230 #define STARTUP_PRIORITY_ MEMORY10329 #define STARTUP_PRIORITY_MEMORY 101 30 #define STARTUP_PRIORITY_CORE 102 31 #define STARTUP_PRIORITY_KERNEL 103 31 32 #define STARTUP_PRIORITY_IOSTREAM 104 33 #define STARTUP_PRIORITY_APPREADY 105 32 34 #endif 33 35 -
src/libcfa/stdhdr/bfdlink.h
rd1e0979 r3bbd012 10 10 // Created On : Tue Jul 18 07:26:04 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Jul 18 07:46:50 201713 // Update Count : 312 // Last Modified On : Sun Jul 22 13:49:30 2018 13 // Update Count : 4 14 14 // 15 15 … … 20 20 #endif 21 21 22 #include_next <bfdlink.h> // must haveinternal check for multiple expansion22 #include_next <bfdlink.h> // has internal check for multiple expansion 23 23 24 24 #if defined( with ) && defined( __CFA_BFDLINK_H__ ) // reset only if set -
src/libcfa/stdhdr/hwloc.h
rd1e0979 r3bbd012 10 10 // Created On : Tue Jul 18 07:45:00 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Jul 18 07:56:33 201713 // Update Count : 312 // Last Modified On : Sun Jul 22 13:49:58 2018 13 // Update Count : 4 14 14 // 15 15 … … 20 20 #endif 21 21 22 #include_next <hwloc.h> // must haveinternal check for multiple expansion22 #include_next <hwloc.h> // has internal check for multiple expansion 23 23 24 24 #if defined( thread ) && defined( __CFA_HWLOC_H__ ) // reset only if set -
src/libcfa/stdhdr/krb5.h
rd1e0979 r3bbd012 10 10 // Created On : Tue Jul 18 07:55:44 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Jul 18 07:58:01 201713 // Update Count : 312 // Last Modified On : Sun Jul 22 13:50:24 2018 13 // Update Count : 4 14 14 // 15 15 … … 20 20 #endif 21 21 22 #include_next <krb5.h> // must haveinternal check for multiple expansion22 #include_next <krb5.h> // has internal check for multiple expansion 23 23 24 24 #if defined( enable ) && defined( __CFA_KRB5_H__ ) // reset only if set -
src/libcfa/stdhdr/malloc.h
rd1e0979 r3bbd012 10 10 // Created On : Thu Jul 20 15:58:16 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Jul 20 16:00:12 201713 // Update Count : 412 // Last Modified On : Mon Jul 23 18:20:32 2018 13 // Update Count : 8 14 14 // 15 16 17 size_t default_mmap_start(); // CFA extras 18 size_t default_heap_expansion(); 19 extern "C" { 20 size_t malloc_alignment( void * ); 21 _Bool malloc_zero_fill( void * ); 22 int malloc_stats_fd( int fd ); 23 void * cmemalign( size_t alignment, size_t noOfElems, size_t elemSize ); 24 } // extern "C" 15 25 16 26 extern "C" { -
src/libcfa/stdlib
rd1e0979 r3bbd012 10 10 // Created On : Thu Jan 28 17:12:35 2016 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Jul 12 08:03:58201813 // Update Count : 3 3712 // Last Modified On : Fri Jul 27 07:21:36 2018 13 // Update Count : 345 14 14 // 15 15 16 16 #pragma once 17 17 18 #include <stdlib.h> // allocation, strto*, ato*18 #include <stdlib.h> // *alloc, strto*, ato* 19 19 extern "C" { 20 20 void * memalign( size_t align, size_t size ); // malloc.h 21 void * memset( void * dest, int c, size_t size );// string.h21 void * memset( void * dest, int fill, size_t size ); // string.h 22 22 void * memcpy( void * dest, const void * src, size_t size ); // string.h 23 void * cmemalign( size_t alignment, size_t noOfElems, size_t elemSize ); // CFA 23 24 } // extern "C" 24 25 … … 36 37 37 38 T * malloc( void ) { 38 // printf( "* malloc\n" );39 39 return (T *)(void *)malloc( (size_t)sizeof(T) ); // C malloc 40 40 } // malloc … … 48 48 49 49 T * calloc( size_t dim ) { 50 //printf( "X2\n" );51 50 return (T *)(void *)calloc( dim, sizeof(T) ); // C calloc 52 51 } // calloc 53 52 54 53 T * realloc( T * ptr, size_t size ) { 55 //printf( "X3\n" );56 54 return (T *)(void *)realloc( (void *)ptr, size ); 57 55 } // realloc 58 56 59 57 T * memalign( size_t align ) { 60 //printf( "X4\n" );61 58 return (T *)memalign( align, sizeof(T) ); 62 59 } // memalign 63 60 64 61 T * aligned_alloc( size_t align ) { 65 //printf( "X5\n" );66 62 return (T *)aligned_alloc( align, sizeof(T) ); 67 63 } // aligned_alloc 68 64 69 65 int posix_memalign( T ** ptr, size_t align ) { 70 //printf( "X6\n" );71 66 return posix_memalign( (void **)ptr, align, sizeof(T) ); // C posix_memalign 72 67 } // posix_memalign … … 76 71 77 72 T * alloc( void ) { 78 //printf( "X7\n" );79 73 return (T *)(void *)malloc( (size_t)sizeof(T) ); // C malloc 80 74 } // alloc 81 75 82 76 T * alloc( char fill ) { 83 //printf( "X8\n" );84 77 T * ptr = (T *)(void *)malloc( (size_t)sizeof(T) ); // C malloc 85 78 return (T *)memset( ptr, (int)fill, sizeof(T) ); // initial with fill value … … 87 80 88 81 T * alloc( size_t dim ) { 89 //printf( "X9\n" );90 82 return (T *)(void *)malloc( dim * (size_t)sizeof(T) ); // C malloc 91 83 } // alloc 92 84 93 85 T * alloc( size_t dim, char fill ) { 94 //printf( "X10\n" );95 86 T * ptr = (T *)(void *)malloc( dim * (size_t)sizeof(T) ); // C malloc 96 87 return (T *)memset( ptr, (int)fill, dim * sizeof(T) ); // initial with fill value … … 98 89 99 90 T * alloc( T ptr[], size_t dim ) { 100 //printf( "X11\n" );101 91 return (T *)(void *)realloc( (void *)ptr, dim * (size_t)sizeof(T) ); // C realloc 102 92 } // alloc … … 109 99 static inline forall( dtype T | sized(T) ) { 110 100 T * align_alloc( size_t align ) { 111 //printf( "X13\n" );112 101 return (T *)memalign( align, sizeof(T) ); 113 102 } // align_alloc 114 103 115 104 T * align_alloc( size_t align, char fill ) { 116 //printf( "X14\n" );117 105 T * ptr = (T *)memalign( align, sizeof(T) ); 118 106 return (T *)memset( ptr, (int)fill, sizeof(T) ); … … 120 108 121 109 T * align_alloc( size_t align, size_t dim ) { 122 //printf( "X15\n" );123 110 return (T *)memalign( align, dim * sizeof(T) ); 124 111 } // align_alloc 125 112 126 113 T * align_alloc( size_t align, size_t dim, char fill ) { 127 //printf( "X16\n" ); 128 T * ptr = (T *)memalign( align, dim * sizeof(T) ); 129 return (T *)memset( ptr, (int)fill, dim * sizeof(T) ); 114 T * ptr; 115 if ( fill == '\0' ) { 116 ptr = (T *)cmemalign( align, dim, sizeof(T) ); 117 } else { 118 ptr = (T *)memalign( align, dim * sizeof(T) ); 119 return (T *)memset( ptr, (int)fill, dim * sizeof(T) ); 120 } // if 121 return ptr; 130 122 } // align_alloc 131 123 } // distribution … … 135 127 // data, non-array types 136 128 137 T * memset( T * dest, char c ) { 138 //printf( "X17\n" ); 139 return (T *)memset( dest, c, sizeof(T) ); 129 T * memset( T * dest, char fill ) { 130 return (T *)memset( dest, fill, sizeof(T) ); 140 131 } // memset 141 132 142 133 T * memcpy( T * dest, const T * src ) { 143 //printf( "X18\n" );144 134 return (T *)memcpy( dest, src, sizeof(T) ); 145 135 } // memcpy … … 149 139 // data, array types 150 140 151 T * memset( T dest[], size_t dim, char c ) { 152 //printf( "X19\n" ); 153 return (T *)(void *)memset( dest, c, dim * sizeof(T) ); // C memset 154 } // memset 155 156 T * memcpy( T dest[], const T src[], size_t dim ) { 157 //printf( "X20\n" ); 141 T * amemset( T dest[], char fill, size_t dim ) { 142 return (T *)(void *)memset( dest, fill, dim * sizeof(T) ); // C memset 143 } // amemset 144 145 T * amemcpy( T dest[], const T src[], size_t dim ) { 158 146 return (T *)(void *)memcpy( dest, src, dim * sizeof(T) ); // C memcpy 159 } // memcpy147 } // amemcpy 160 148 } // distribution 161 149 … … 215 203 E * bsearchu( E key, const E * vals, size_t dim ); 216 204 size_t bsearchu( E key, const E * vals, size_t dim ); 217 218 void qsort( E * vals, size_t dim );219 205 } // distribution 220 206 … … 226 212 E * bsearchu( K key, const E * vals, size_t dim ); 227 213 size_t bsearchu( K key, const E * vals, size_t dim ); 214 } // distribution 215 216 forall( otype E | { int ?<?( E, E ); } ) { 217 void qsort( E * vals, size_t dim ); 228 218 } // distribution 229 219 -
src/main.cc
rd1e0979 r3bbd012 28 28 #include <string> // for char_traits, operator<< 29 29 30 #include "CompilationState.h" 30 31 #include "../config.h" // for CFA_LIBDIR 31 32 #include "CodeGen/FixMain.h" // for FixMain … … 72 73 DeclarationNode * parseTree = nullptr; // program parse tree 73 74 74 extern int yydebug; // set for -g flag (Grammar)75 bool76 astp = false,77 bresolvep = false,78 bboxp = false,79 bcodegenp = false,80 ctorinitp = false,81 declstatsp = false,82 exprp = false,83 expraltp = false,84 genericsp = false,85 libcfap = false,86 nopreludep = false,87 noprotop = false,88 nomainp = false,89 parsep = false,90 symtabp = false,91 treep = false,92 tuplep = false,93 validp = false,94 errorp = false,95 codegenp = false,96 prettycodegenp = false,97 linemarks = false;98 extern bool resolvep; // used in AlternativeFinder99 100 75 static void parse_cmdline( int argc, char *argv[], const char *& filename ); 101 76 static void parse( FILE * input, LinkageSpec::Spec linkage, bool shouldExit = false ); … … 208 183 209 184 // Read to gcc builtins, if not generating the cfa library 210 FILE * gcc_builtins = fopen( libcfap | treep? "../prelude/gcc-builtins.cf" : CFA_LIBDIR "/gcc-builtins.cf", "r" );185 FILE * gcc_builtins = fopen( buildingLibrary() ? "../prelude/gcc-builtins.cf" : CFA_LIBDIR "/gcc-builtins.cf", "r" ); 211 186 assertf( gcc_builtins, "cannot open gcc-builtins.cf\n" ); 212 187 parse( gcc_builtins, LinkageSpec::Compiler ); 213 188 214 189 // read the extra prelude in, if not generating the cfa library 215 FILE * extras = fopen( libcfap | treep? "../prelude/extras.cf" : CFA_LIBDIR "/extras.cf", "r" );190 FILE * extras = fopen( buildingLibrary() ? "../prelude/extras.cf" : CFA_LIBDIR "/extras.cf", "r" ); 216 191 assertf( extras, "cannot open extras.cf\n" ); 217 192 parse( extras, LinkageSpec::BuiltinC ); … … 219 194 if ( ! libcfap ) { 220 195 // read the prelude in, if not generating the cfa library 221 FILE * prelude = fopen( treep? "../prelude/prelude.cf" : CFA_LIBDIR "/prelude.cf", "r" );196 FILE * prelude = fopen( buildingLibrary() ? "../prelude/prelude.cf" : CFA_LIBDIR "/prelude.cf", "r" ); 222 197 assertf( prelude, "cannot open prelude.cf\n" ); 223 198 parse( prelude, LinkageSpec::Intrinsic ); 224 199 225 200 // Read to cfa builtins, if not generating the cfa library 226 FILE * builtins = fopen( libcfap | treep? "../prelude/builtins.cf" : CFA_LIBDIR "/builtins.cf", "r" );201 FILE * builtins = fopen( buildingLibrary() ? "../prelude/builtins.cf" : CFA_LIBDIR "/builtins.cf", "r" ); 227 202 assertf( builtins, "cannot open builtins.cf\n" ); 228 203 parse( builtins, LinkageSpec::BuiltinCFA ); … … 299 274 300 275 // fix ObjectDecl - replaces ConstructorInit nodes 301 PASS( "fixInit", InitTweak::fix( translationUnit, filename, libcfap || treep) );276 PASS( "fixInit", InitTweak::fix( translationUnit, buildingLibrary() ) ); 302 277 if ( ctorinitp ) { 303 278 dump ( translationUnit ); -
src/prelude/Makefile.am
rd1e0979 r3bbd012 23 23 noinst_DATA = ../libcfa/libcfa-prelude.c 24 24 25 CC = ${abs_top_ srcdir}/src/driver/cfa25 CC = ${abs_top_builddir}/src/driver/cfa 26 26 27 27 $(DEPDIR) : … … 32 32 33 33 # create extra forward types/declarations to reduce inclusion of library files 34 extras.cf : extras.regxextras.c35 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ -E ${srcdir}/extras.c | grep -f extras.regx > ${srcdir}/extras.cf34 extras.cf : ${srcdir}/extras.regx ${srcdir}/extras.c 35 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ -E ${srcdir}/extras.c | grep -f ${srcdir}/extras.regx > extras.cf 36 36 37 37 # create forward declarations for gcc builtins 38 gcc-builtins.cf : gcc-builtins.c prototypes.sed39 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ - E -P $< | sed -r -fprototypes.sed > $@38 gcc-builtins.cf : gcc-builtins.c ${srcdir}/prototypes.sed 39 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ -I${srcdir} -E -P $< | sed -r -f ${srcdir}/prototypes.sed > $@ 40 40 41 gcc-builtins.c : builtins.def prototypes.awk sync-builtins.cf42 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ - E prototypes.c | awk -fprototypes.awk > $@41 gcc-builtins.c : ${srcdir}/builtins.def ${srcdir}/prototypes.awk ${srcdir}/sync-builtins.cf ${srcdir}/prototypes.c 42 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ -I${srcdir} -E ${srcdir}/prototypes.c | awk -f ${srcdir}/prototypes.awk > $@ 43 43 44 44 prelude.cf : prelude-gen.cc … … 58 58 include $(DEPDIR)/builtins.Po 59 59 60 ../libcfa/libcfa-prelude.c : prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_ srcdir}/src/driver/cfa-cpp61 ${AM_V_GEN}${abs_top_ srcdir}/src/driver/cfa-cpp -l prelude.cf $@ # use src/cfa-cpp as not in lib until after install60 ../libcfa/libcfa-prelude.c : prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_builddir}/src/driver/cfa-cpp 61 ${AM_V_GEN}${abs_top_builddir}/src/driver/cfa-cpp -l prelude.cf $@ # use src/cfa-cpp as not in lib until after install 62 62 63 bootloader.c : bootloader.cf prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp64 ${AM_V_GEN}${abs_top_ srcdir}/src/driver/cfa-cpp -tpmbootloader.cf $@ # use src/cfa-cpp as not in lib until after install63 bootloader.c : ${srcdir}/bootloader.cf prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_builddir}/src/driver/cfa-cpp 64 ${AM_V_GEN}${abs_top_builddir}/src/driver/cfa-cpp -tpm ${srcdir}/bootloader.cf $@ # use src/cfa-cpp as not in lib until after install 65 65 66 66 maintainer-clean-local : -
src/prelude/Makefile.in
rd1e0979 r3bbd012 162 162 AWK = @AWK@ 163 163 BACKEND_CC = @BACKEND_CC@ 164 CC = ${abs_top_ srcdir}/src/driver/cfa164 CC = ${abs_top_builddir}/src/driver/cfa 165 165 CCAS = @CCAS@ 166 166 CCASDEPMODE = @CCASDEPMODE@ … … 202 202 LTLIBOBJS = @LTLIBOBJS@ 203 203 MACHINE_TYPE = @MACHINE_TYPE@ 204 MAINT = @MAINT@205 204 MAKEINFO = @MAKEINFO@ 206 205 MKDIR_P = @MKDIR_P@ … … 285 284 286 285 .SUFFIXES: 287 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@$(srcdir)/Makefile.am $(am__configure_deps)286 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) 288 287 @for dep in $?; do \ 289 288 case '$(am__configure_deps)' in \ … … 309 308 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 310 309 311 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@$(am__configure_deps)310 $(top_srcdir)/configure: $(am__configure_deps) 312 311 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 313 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@$(am__aclocal_m4_deps)312 $(ACLOCAL_M4): $(am__aclocal_m4_deps) 314 313 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 315 314 $(am__aclocal_m4_deps): … … 501 500 502 501 # create extra forward types/declarations to reduce inclusion of library files 503 extras.cf : extras.regxextras.c504 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ -E ${srcdir}/extras.c | grep -f extras.regx > ${srcdir}/extras.cf502 extras.cf : ${srcdir}/extras.regx ${srcdir}/extras.c 503 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ -E ${srcdir}/extras.c | grep -f ${srcdir}/extras.regx > extras.cf 505 504 506 505 # create forward declarations for gcc builtins 507 gcc-builtins.cf : gcc-builtins.c prototypes.sed508 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ - E -P $< | sed -r -fprototypes.sed > $@509 510 gcc-builtins.c : builtins.def prototypes.awk sync-builtins.cf511 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ - E prototypes.c | awk -fprototypes.awk > $@506 gcc-builtins.cf : gcc-builtins.c ${srcdir}/prototypes.sed 507 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ -I${srcdir} -E -P $< | sed -r -f ${srcdir}/prototypes.sed > $@ 508 509 gcc-builtins.c : ${srcdir}/builtins.def ${srcdir}/prototypes.awk ${srcdir}/sync-builtins.cf ${srcdir}/prototypes.c 510 ${AM_V_GEN}@BACKEND_CC@ @CFA_FLAGS@ -I${srcdir} -E ${srcdir}/prototypes.c | awk -f ${srcdir}/prototypes.awk > $@ 512 511 513 512 prelude.cf : prelude-gen.cc … … 527 526 include $(DEPDIR)/builtins.Po 528 527 529 ../libcfa/libcfa-prelude.c : prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_ srcdir}/src/driver/cfa-cpp530 ${AM_V_GEN}${abs_top_ srcdir}/src/driver/cfa-cpp -l prelude.cf $@ # use src/cfa-cpp as not in lib until after install531 532 bootloader.c : bootloader.cf prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp533 ${AM_V_GEN}${abs_top_ srcdir}/src/driver/cfa-cpp -tpmbootloader.cf $@ # use src/cfa-cpp as not in lib until after install528 ../libcfa/libcfa-prelude.c : prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_builddir}/src/driver/cfa-cpp 529 ${AM_V_GEN}${abs_top_builddir}/src/driver/cfa-cpp -l prelude.cf $@ # use src/cfa-cpp as not in lib until after install 530 531 bootloader.c : ${srcdir}/bootloader.cf prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_builddir}/src/driver/cfa-cpp 532 ${AM_V_GEN}${abs_top_builddir}/src/driver/cfa-cpp -tpm ${srcdir}/bootloader.cf $@ # use src/cfa-cpp as not in lib until after install 534 533 535 534 maintainer-clean-local : -
src/tests/.expect/alloc-ERROR.txt
rd1e0979 r3bbd012 1 alloc.c:26 4:1 error: No reasonable alternatives for expression Applying untyped:1 alloc.c:265:1 error: No reasonable alternatives for expression Applying untyped: 2 2 Name: ?=? 3 3 ...to: … … 19 19 20 20 21 alloc.c:26 5:1 error: No reasonable alternatives for expression Applying untyped:21 alloc.c:266:1 error: No reasonable alternatives for expression Applying untyped: 22 22 Name: ?=? 23 23 ...to: … … 39 39 40 40 41 alloc.c:26 6:1 error: No reasonable alternatives for expression Applying untyped:41 alloc.c:267:1 error: No reasonable alternatives for expression Applying untyped: 42 42 Name: ?=? 43 43 ...to: … … 50 50 51 51 52 alloc.c:26 7:1 error: No reasonable alternatives for expression Applying untyped:52 alloc.c:268:1 error: No reasonable alternatives for expression Applying untyped: 53 53 Name: ?=? 54 54 ...to: -
src/tests/.expect/alloc.txt
rd1e0979 r3bbd012 49 49 CFA array memset 50 50 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 51 CFA memcpy51 CFA array memcpy 52 52 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 0xffffffff -nan, 53 53 -
src/tests/.expect/attributes.x64.txt
rd1e0979 r3bbd012 88 88 __attribute__ ((used,unused,unused)) signed int __f7__i_1; 89 89 __attribute__ ((used,used,unused)) signed int __f8__i_1; 90 __attribute__ ((unused)) signed int __anonymous_object0;91 90 __attribute__ ((unused,unused)) signed int *__f9__Pi_1; 92 91 }; … … 103 102 static inline void ___constructor__F_4sFdliiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1); 104 103 static inline void ___constructor__F_4sFdliiiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1); 105 static inline void ___constructor__F_4sFdliiiiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object1); 106 static inline void ___constructor__F_4sFdliiiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object2, __attribute__ ((unused,unused)) signed int *__f9__Pi_1); 104 static inline void ___constructor__F_4sFdliiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused,unused)) signed int *__f9__Pi_1); 107 105 static inline void ___constructor__F_4sFdl_autogen___1(struct Fdl *___dst__4sFdl_1){ 108 106 ((void)((*___dst__4sFdl_1).__f1__i_1) /* ?{} */); … … 114 112 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 115 113 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 116 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);117 114 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 118 115 } … … 126 123 ((void)((*___dst__4sFdl_1).__f7__i_1=___src__4sFdl_1.__f7__i_1) /* ?{} */); 127 124 ((void)((*___dst__4sFdl_1).__f8__i_1=___src__4sFdl_1.__f8__i_1) /* ?{} */); 128 ((void)((*___dst__4sFdl_1).__anonymous_object0=___src__4sFdl_1.__anonymous_object0) /* ?{} */);129 125 ((void)((*___dst__4sFdl_1).__f9__Pi_1=___src__4sFdl_1.__f9__Pi_1) /* ?{} */); 130 126 } 131 127 static inline void ___destructor__F_4sFdl_autogen___1(struct Fdl *___dst__4sFdl_1){ 132 128 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ^?{} */); 133 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ^?{} */);134 129 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ^?{} */); 135 130 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ^?{} */); … … 151 146 ((void)((*___dst__4sFdl_1).__f7__i_1=___src__4sFdl_1.__f7__i_1)); 152 147 ((void)((*___dst__4sFdl_1).__f8__i_1=___src__4sFdl_1.__f8__i_1)); 153 ((void)((*___dst__4sFdl_1).__anonymous_object0=___src__4sFdl_1.__anonymous_object0));154 148 ((void)((*___dst__4sFdl_1).__f9__Pi_1=___src__4sFdl_1.__f9__Pi_1)); 155 149 ((void)___constructor__F_4sFdl4sFdl_autogen___1((&___ret__4sFdl_1), (*___dst__4sFdl_1))); … … 165 159 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 166 160 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 167 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);168 161 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 169 162 } … … 177 170 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 178 171 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 179 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);180 172 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 181 173 } … … 189 181 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 190 182 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 191 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);192 183 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 193 184 } … … 201 192 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 202 193 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 203 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);204 194 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 205 195 } … … 213 203 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 214 204 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 215 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);216 205 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 217 206 } … … 225 214 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 226 215 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 227 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);228 216 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 229 217 } … … 237 225 ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */); 238 226 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 239 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);240 227 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 241 228 } … … 249 236 ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */); 250 237 ((void)((*___dst__4sFdl_1).__f8__i_1=__f8__i_1) /* ?{} */); 251 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */); 252 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 253 } 254 static inline void ___constructor__F_4sFdliiiiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object3){ 238 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 239 } 240 static inline void ___constructor__F_4sFdliiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused,unused)) signed int *__f9__Pi_1){ 255 241 ((void)((*___dst__4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */); 256 242 ((void)((*___dst__4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */); … … 261 247 ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */); 262 248 ((void)((*___dst__4sFdl_1).__f8__i_1=__f8__i_1) /* ?{} */); 263 ((void)((*___dst__4sFdl_1).__anonymous_object0=__anonymous_object3) /* ?{} */);264 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);265 }266 static inline void ___constructor__F_4sFdliiiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object4, __attribute__ ((unused,unused)) signed int *__f9__Pi_1){267 ((void)((*___dst__4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);268 ((void)((*___dst__4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);269 ((void)((*___dst__4sFdl_1).__f3__i_1=__f3__i_1) /* ?{} */);270 ((void)((*___dst__4sFdl_1).__f4__i_1=__f4__i_1) /* ?{} */);271 ((void)((*___dst__4sFdl_1).__f5__i_1=__f5__i_1) /* ?{} */);272 ((void)((*___dst__4sFdl_1).__f6__i_1=__f6__i_1) /* ?{} */);273 ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */);274 ((void)((*___dst__4sFdl_1).__f8__i_1=__f8__i_1) /* ?{} */);275 ((void)((*___dst__4sFdl_1).__anonymous_object0=__anonymous_object4) /* ?{} */);276 249 ((void)((*___dst__4sFdl_1).__f9__Pi_1=__f9__Pi_1) /* ?{} */); 277 250 } … … 293 266 __attribute__ ((unused)) signed int **const ___retval_f2__CPPi_1; 294 267 } 295 __attribute__ ((unused,used,unused)) signed int (*__f3__FPA0i_i__1(signed int __anonymous_object 5))[];268 __attribute__ ((unused,used,unused)) signed int (*__f3__FPA0i_i__1(signed int __anonymous_object0))[]; 296 269 __attribute__ ((unused,unused)) signed int (*__f3__FPA0i_i__1(signed int __p__i_1))[]{ 297 270 __attribute__ ((unused)) signed int (*___retval_f3__PA0i_1)[]; 298 271 } 299 __attribute__ ((unused,used,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object 6);300 __attribute__ ((unused,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object 7){301 __attribute__ ((unused)) signed int (*___retval_f4__Fi_i__1)(signed int __anonymous_object 8);272 __attribute__ ((unused,used,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object1); 273 __attribute__ ((unused,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object2){ 274 __attribute__ ((unused)) signed int (*___retval_f4__Fi_i__1)(signed int __anonymous_object3); 302 275 } 303 276 signed int __vtr__Fi___1(){ … … 329 302 signed int __tpr2__Fi_PPi__1(__attribute__ ((unused,unused,unused,unused,unused,unused)) signed int **__Foo__PPi_1); 330 303 signed int __tpr3__Fi_Pi__1(__attribute__ ((unused,unused,unused)) signed int *__Foo__Pi_1); 331 signed int __tpr4__Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object 9)(__attribute__ ((unused,unused)) signed int __anonymous_object10[((unsigned long int )5)]));304 signed int __tpr4__Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object4)(__attribute__ ((unused,unused)) signed int __anonymous_object5[((unsigned long int )5)])); 332 305 signed int __tpr5__Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__Foo__Fi___1)()); 333 306 signed int __tpr6__Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__Foo__Fi___1)()); 334 signed int __tpr7__Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object 11)(__attribute__ ((unused)) signed int (*__anonymous_object12)(__attribute__ ((unused,unused)) signed int __anonymous_object13)));307 signed int __tpr7__Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object6)(__attribute__ ((unused)) signed int (*__anonymous_object7)(__attribute__ ((unused,unused)) signed int __anonymous_object8))); 335 308 signed int __ad__Fi___1(){ 336 309 __attribute__ ((unused)) signed int ___retval_ad__i_1; … … 343 316 ((void)sizeof(__attribute__ ((unused,unused)) signed int )); 344 317 ((void)sizeof(__attribute__ ((unused,unused,unused,unused)) signed int **)); 345 ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int [ 5]));346 ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int (*)[ 10]));318 ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int [((unsigned long int )5)])); 319 ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int (*)[((unsigned long int )10)])); 347 320 ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int ())); 348 321 struct __attribute__ ((unused)) __anonymous3 { … … 386 359 ((void)sizeof(enum __anonymous4 )); 387 360 } 388 signed int __apd1__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object 14, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object15);389 signed int __apd2__Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object1 6, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object17);390 signed int __apd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object1 8, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object19);391 signed int __apd4__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object 20)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object21)());392 signed int __apd5__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object 22)(__attribute__ ((unused)) signed int __anonymous_object23), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object24)(__attribute__ ((unused)) signed int __anonymous_object25));393 signed int __apd6__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object2 6)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object27)());394 signed int __apd7__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object2 8)(__attribute__ ((unused)) signed int __anonymous_object29), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object30)(__attribute__ ((unused)) signed int __anonymous_object31));361 signed int __apd1__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object9, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object10); 362 signed int __apd2__Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object11, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object12); 363 signed int __apd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object13, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object14); 364 signed int __apd4__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object15)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object16)()); 365 signed int __apd5__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object17)(__attribute__ ((unused)) signed int __anonymous_object18), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object19)(__attribute__ ((unused)) signed int __anonymous_object20)); 366 signed int __apd6__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object21)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object22)()); 367 signed int __apd7__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object23)(__attribute__ ((unused)) signed int __anonymous_object24), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object25)(__attribute__ ((unused)) signed int __anonymous_object26)); 395 368 struct Vad { 396 __attribute__ ((unused)) signed int __anonymous_object32; 397 __attribute__ ((unused,unused)) signed int *__anonymous_object33; 398 __attribute__ ((unused,unused)) signed int __anonymous_object34[((unsigned long int )10)]; 399 __attribute__ ((unused,unused)) signed int (*__anonymous_object35)(); 369 __attribute__ ((unused)) signed int __anonymous_object27:4; 370 __attribute__ ((unused)) signed int __anonymous_object28:4; 371 __attribute__ ((unused,unused)) signed int __anonymous_object29:6; 400 372 }; 401 373 static inline void ___constructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1); … … 403 375 static inline void ___destructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1); 404 376 static inline struct Vad ___operator_assign__F4sVad_4sVad4sVad_autogen___1(struct Vad *___dst__4sVad_1, struct Vad ___src__4sVad_1); 405 static inline void ___constructor__F_4sVadi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object36);406 static inline void ___constructor__F_4sVadiPi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object37, __attribute__ ((unused,unused)) signed int *__anonymous_object38);407 static inline void ___constructor__F_4sVadiPiA0i_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object39, __attribute__ ((unused,unused)) signed int *__anonymous_object40, __attribute__ ((unused,unused)) signed int __anonymous_object41[((unsigned long int )10)]);408 static inline void ___constructor__F_4sVadiPiA0iFi___autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object42, __attribute__ ((unused,unused)) signed int *__anonymous_object43, __attribute__ ((unused,unused)) signed int __anonymous_object44[((unsigned long int )10)], __attribute__ ((unused,unused)) signed int (*__anonymous_object45)());409 377 static inline void ___constructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1){ 410 ((void)((*___dst__4sVad_1).__anonymous_object32) /* ?{} */);411 ((void)((*___dst__4sVad_1).__anonymous_object33) /* ?{} */);412 {413 signed int _index0 = 0;414 for (;(_index0<10);((void)(++_index0))) {415 ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index0)]) /* ?{} */);416 }417 418 }419 420 ((void)((*___dst__4sVad_1).__anonymous_object35) /* ?{} */);421 378 } 422 379 static inline void ___constructor__F_4sVad4sVad_autogen___1(struct Vad *___dst__4sVad_1, struct Vad ___src__4sVad_1){ 423 ((void)((*___dst__4sVad_1).__anonymous_object32=___src__4sVad_1.__anonymous_object32) /* ?{} */);424 ((void)((*___dst__4sVad_1).__anonymous_object33=___src__4sVad_1.__anonymous_object33) /* ?{} */);425 {426 signed int _index1 = 0;427 for (;(_index1<10);((void)(++_index1))) {428 ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index1)]=___src__4sVad_1.__anonymous_object34[((signed long int )_index1)]) /* ?{} */);429 }430 431 }432 433 ((void)((*___dst__4sVad_1).__anonymous_object35=___src__4sVad_1.__anonymous_object35) /* ?{} */);434 380 } 435 381 static inline void ___destructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1){ 436 ((void)((*___dst__4sVad_1).__anonymous_object35) /* ^?{} */);437 {438 signed int _index2 = (10-1);439 for (;(_index2>=0);((void)(--_index2))) {440 ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index2)]) /* ^?{} */);441 }442 443 }444 445 ((void)((*___dst__4sVad_1).__anonymous_object33) /* ^?{} */);446 ((void)((*___dst__4sVad_1).__anonymous_object32) /* ^?{} */);447 382 } 448 383 static inline struct Vad ___operator_assign__F4sVad_4sVad4sVad_autogen___1(struct Vad *___dst__4sVad_1, struct Vad ___src__4sVad_1){ 449 384 struct Vad ___ret__4sVad_1; 450 ((void)((*___dst__4sVad_1).__anonymous_object32=___src__4sVad_1.__anonymous_object32));451 ((void)((*___dst__4sVad_1).__anonymous_object33=___src__4sVad_1.__anonymous_object33));452 {453 signed int _index3 = 0;454 for (;(_index3<10);((void)(++_index3))) {455 ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index3)]=___src__4sVad_1.__anonymous_object34[((signed long int )_index3)]));456 }457 458 }459 460 ((void)((*___dst__4sVad_1).__anonymous_object35=___src__4sVad_1.__anonymous_object35));461 385 ((void)___constructor__F_4sVad4sVad_autogen___1((&___ret__4sVad_1), (*___dst__4sVad_1))); 462 386 return ___ret__4sVad_1; 463 387 } 464 static inline void ___constructor__F_4sVadi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object46){465 ((void)((*___dst__4sVad_1).__anonymous_object32=__anonymous_object46) /* ?{} */);466 ((void)((*___dst__4sVad_1).__anonymous_object33) /* ?{} */);467 {468 signed int _index4 = 0;469 for (;(_index4<10);((void)(++_index4))) {470 ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index4)]) /* ?{} */);471 }472 473 }474 475 ((void)((*___dst__4sVad_1).__anonymous_object35) /* ?{} */);476 }477 static inline void ___constructor__F_4sVadiPi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object47, __attribute__ ((unused,unused)) signed int *__anonymous_object48){478 ((void)((*___dst__4sVad_1).__anonymous_object32=__anonymous_object47) /* ?{} */);479 ((void)((*___dst__4sVad_1).__anonymous_object33=__anonymous_object48) /* ?{} */);480 {481 signed int _index5 = 0;482 for (;(_index5<10);((void)(++_index5))) {483 ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index5)]) /* ?{} */);484 }485 486 }487 488 ((void)((*___dst__4sVad_1).__anonymous_object35) /* ?{} */);489 }490 static inline void ___constructor__F_4sVadiPiA0i_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object49, __attribute__ ((unused,unused)) signed int *__anonymous_object50, __attribute__ ((unused,unused)) signed int __anonymous_object51[((unsigned long int )10)]){491 ((void)((*___dst__4sVad_1).__anonymous_object32=__anonymous_object49) /* ?{} */);492 ((void)((*___dst__4sVad_1).__anonymous_object33=__anonymous_object50) /* ?{} */);493 {494 signed int _index6 = 0;495 for (;(_index6<10);((void)(++_index6))) {496 ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index6)]=__anonymous_object51[((signed long int )_index6)]) /* ?{} */);497 }498 499 }500 501 ((void)((*___dst__4sVad_1).__anonymous_object35) /* ?{} */);502 }503 static inline void ___constructor__F_4sVadiPiA0iFi___autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object52, __attribute__ ((unused,unused)) signed int *__anonymous_object53, __attribute__ ((unused,unused)) signed int __anonymous_object54[((unsigned long int )10)], __attribute__ ((unused,unused)) signed int (*__anonymous_object55)()){504 ((void)((*___dst__4sVad_1).__anonymous_object32=__anonymous_object52) /* ?{} */);505 ((void)((*___dst__4sVad_1).__anonymous_object33=__anonymous_object53) /* ?{} */);506 {507 signed int _index7 = 0;508 for (;(_index7<10);((void)(++_index7))) {509 ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index7)]=__anonymous_object54[((signed long int )_index7)]) /* ?{} */);510 }511 512 }513 514 ((void)((*___dst__4sVad_1).__anonymous_object35=__anonymous_object55) /* ?{} */);515 } -
src/tests/.expect/attributes.x86.txt
rd1e0979 r3bbd012 88 88 __attribute__ ((used,unused,unused)) signed int __f7__i_1; 89 89 __attribute__ ((used,used,unused)) signed int __f8__i_1; 90 __attribute__ ((unused)) signed int __anonymous_object0;91 90 __attribute__ ((unused,unused)) signed int *__f9__Pi_1; 92 91 }; … … 103 102 static inline void ___constructor__F_4sFdliiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1); 104 103 static inline void ___constructor__F_4sFdliiiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1); 105 static inline void ___constructor__F_4sFdliiiiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object1); 106 static inline void ___constructor__F_4sFdliiiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object2, __attribute__ ((unused,unused)) signed int *__f9__Pi_1); 104 static inline void ___constructor__F_4sFdliiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused,unused)) signed int *__f9__Pi_1); 107 105 static inline void ___constructor__F_4sFdl_autogen___1(struct Fdl *___dst__4sFdl_1){ 108 106 ((void)((*___dst__4sFdl_1).__f1__i_1) /* ?{} */); … … 114 112 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 115 113 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 116 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);117 114 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 118 115 } … … 126 123 ((void)((*___dst__4sFdl_1).__f7__i_1=___src__4sFdl_1.__f7__i_1) /* ?{} */); 127 124 ((void)((*___dst__4sFdl_1).__f8__i_1=___src__4sFdl_1.__f8__i_1) /* ?{} */); 128 ((void)((*___dst__4sFdl_1).__anonymous_object0=___src__4sFdl_1.__anonymous_object0) /* ?{} */);129 125 ((void)((*___dst__4sFdl_1).__f9__Pi_1=___src__4sFdl_1.__f9__Pi_1) /* ?{} */); 130 126 } 131 127 static inline void ___destructor__F_4sFdl_autogen___1(struct Fdl *___dst__4sFdl_1){ 132 128 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ^?{} */); 133 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ^?{} */);134 129 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ^?{} */); 135 130 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ^?{} */); … … 151 146 ((void)((*___dst__4sFdl_1).__f7__i_1=___src__4sFdl_1.__f7__i_1)); 152 147 ((void)((*___dst__4sFdl_1).__f8__i_1=___src__4sFdl_1.__f8__i_1)); 153 ((void)((*___dst__4sFdl_1).__anonymous_object0=___src__4sFdl_1.__anonymous_object0));154 148 ((void)((*___dst__4sFdl_1).__f9__Pi_1=___src__4sFdl_1.__f9__Pi_1)); 155 149 ((void)___constructor__F_4sFdl4sFdl_autogen___1((&___ret__4sFdl_1), (*___dst__4sFdl_1))); … … 165 159 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 166 160 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 167 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);168 161 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 169 162 } … … 177 170 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 178 171 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 179 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);180 172 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 181 173 } … … 189 181 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 190 182 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 191 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);192 183 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 193 184 } … … 201 192 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 202 193 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 203 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);204 194 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 205 195 } … … 213 203 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 214 204 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 215 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);216 205 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 217 206 } … … 225 214 ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */); 226 215 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 227 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);228 216 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 229 217 } … … 237 225 ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */); 238 226 ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */); 239 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);240 227 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 241 228 } … … 249 236 ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */); 250 237 ((void)((*___dst__4sFdl_1).__f8__i_1=__f8__i_1) /* ?{} */); 251 ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */); 252 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 253 } 254 static inline void ___constructor__F_4sFdliiiiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object3){ 238 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */); 239 } 240 static inline void ___constructor__F_4sFdliiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused,unused)) signed int *__f9__Pi_1){ 255 241 ((void)((*___dst__4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */); 256 242 ((void)((*___dst__4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */); … … 261 247 ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */); 262 248 ((void)((*___dst__4sFdl_1).__f8__i_1=__f8__i_1) /* ?{} */); 263 ((void)((*___dst__4sFdl_1).__anonymous_object0=__anonymous_object3) /* ?{} */);264 ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);265 }266 static inline void ___constructor__F_4sFdliiiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object4, __attribute__ ((unused,unused)) signed int *__f9__Pi_1){267 ((void)((*___dst__4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);268 ((void)((*___dst__4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);269 ((void)((*___dst__4sFdl_1).__f3__i_1=__f3__i_1) /* ?{} */);270 ((void)((*___dst__4sFdl_1).__f4__i_1=__f4__i_1) /* ?{} */);271 ((void)((*___dst__4sFdl_1).__f5__i_1=__f5__i_1) /* ?{} */);272 ((void)((*___dst__4sFdl_1).__f6__i_1=__f6__i_1) /* ?{} */);273 ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */);274 ((void)((*___dst__4sFdl_1).__f8__i_1=__f8__i_1) /* ?{} */);275 ((void)((*___dst__4sFdl_1).__anonymous_object0=__anonymous_object4) /* ?{} */);276 249 ((void)((*___dst__4sFdl_1).__f9__Pi_1=__f9__Pi_1) /* ?{} */); 277 250 } … … 293 266 __attribute__ ((unused)) signed int **const ___retval_f2__CPPi_1; 294 267 } 295 __attribute__ ((unused,used,unused)) signed int (*__f3__FPA0i_i__1(signed int __anonymous_object 5))[];268 __attribute__ ((unused,used,unused)) signed int (*__f3__FPA0i_i__1(signed int __anonymous_object0))[]; 296 269 __attribute__ ((unused,unused)) signed int (*__f3__FPA0i_i__1(signed int __p__i_1))[]{ 297 270 __attribute__ ((unused)) signed int (*___retval_f3__PA0i_1)[]; 298 271 } 299 __attribute__ ((unused,used,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object 6);300 __attribute__ ((unused,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object 7){301 __attribute__ ((unused)) signed int (*___retval_f4__Fi_i__1)(signed int __anonymous_object 8);272 __attribute__ ((unused,used,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object1); 273 __attribute__ ((unused,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object2){ 274 __attribute__ ((unused)) signed int (*___retval_f4__Fi_i__1)(signed int __anonymous_object3); 302 275 } 303 276 signed int __vtr__Fi___1(){ … … 329 302 signed int __tpr2__Fi_PPi__1(__attribute__ ((unused,unused,unused,unused,unused,unused)) signed int **__Foo__PPi_1); 330 303 signed int __tpr3__Fi_Pi__1(__attribute__ ((unused,unused,unused)) signed int *__Foo__Pi_1); 331 signed int __tpr4__Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object 9)(__attribute__ ((unused,unused)) signed int __anonymous_object10[((unsigned int )5)]));304 signed int __tpr4__Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object4)(__attribute__ ((unused,unused)) signed int __anonymous_object5[((unsigned int )5)])); 332 305 signed int __tpr5__Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__Foo__Fi___1)()); 333 306 signed int __tpr6__Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__Foo__Fi___1)()); 334 signed int __tpr7__Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object 11)(__attribute__ ((unused)) signed int (*__anonymous_object12)(__attribute__ ((unused,unused)) signed int __anonymous_object13)));307 signed int __tpr7__Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object6)(__attribute__ ((unused)) signed int (*__anonymous_object7)(__attribute__ ((unused,unused)) signed int __anonymous_object8))); 335 308 signed int __ad__Fi___1(){ 336 309 __attribute__ ((unused)) signed int ___retval_ad__i_1; … … 386 359 ((void)sizeof(enum __anonymous4 )); 387 360 } 388 signed int __apd1__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object 14, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object15);389 signed int __apd2__Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object1 6, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object17);390 signed int __apd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object1 8, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object19);391 signed int __apd4__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object 20)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object21)());392 signed int __apd5__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object 22)(__attribute__ ((unused)) signed int __anonymous_object23), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object24)(__attribute__ ((unused)) signed int __anonymous_object25));393 signed int __apd6__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object2 6)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object27)());394 signed int __apd7__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object2 8)(__attribute__ ((unused)) signed int __anonymous_object29), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object30)(__attribute__ ((unused)) signed int __anonymous_object31));361 signed int __apd1__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object9, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object10); 362 signed int __apd2__Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object11, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object12); 363 signed int __apd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object13, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object14); 364 signed int __apd4__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object15)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object16)()); 365 signed int __apd5__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object17)(__attribute__ ((unused)) signed int __anonymous_object18), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object19)(__attribute__ ((unused)) signed int __anonymous_object20)); 366 signed int __apd6__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object21)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object22)()); 367 signed int __apd7__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object23)(__attribute__ ((unused)) signed int __anonymous_object24), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object25)(__attribute__ ((unused)) signed int __anonymous_object26)); 395 368 struct Vad { 396 __attribute__ ((unused)) signed int __anonymous_object32; 397 __attribute__ ((unused,unused)) signed int *__anonymous_object33; 398 __attribute__ ((unused,unused)) signed int __anonymous_object34[((unsigned int )10)]; 399 __attribute__ ((unused,unused)) signed int (*__anonymous_object35)(); 369 __attribute__ ((unused)) signed int __anonymous_object27:4; 370 __attribute__ ((unused)) signed int __anonymous_object28:4; 371 __attribute__ ((unused,unused)) signed int __anonymous_object29:6; 400 372 }; 401 373 static inline void ___constructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1); … … 403 375 static inline void ___destructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1); 404 376 static inline struct Vad ___operator_assign__F4sVad_4sVad4sVad_autogen___1(struct Vad *___dst__4sVad_1, struct Vad ___src__4sVad_1); 405 static inline void ___constructor__F_4sVadi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object36);406 static inline void ___constructor__F_4sVadiPi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object37, __attribute__ ((unused,unused)) signed int *__anonymous_object38);407 static inline void ___constructor__F_4sVadiPiA0i_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object39, __attribute__ ((unused,unused)) signed int *__anonymous_object40, __attribute__ ((unused,unused)) signed int __anonymous_object41[((unsigned int )10)]);408 static inline void ___constructor__F_4sVadiPiA0iFi___autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object42, __attribute__ ((unused,unused)) signed int *__anonymous_object43, __attribute__ ((unused,unused)) signed int __anonymous_object44[((unsigned int )10)], __attribute__ ((unused,unused)) signed int (*__anonymous_object45)());409 377 static inline void ___constructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1){ 410 ((void)((*___dst__4sVad_1).__anonymous_object32) /* ?{} */);411 ((void)((*___dst__4sVad_1).__anonymous_object33) /* ?{} */);412 {413 signed int _index0 = 0;414 for (;(_index0<10);((void)(++_index0))) {415 ((void)((*___dst__4sVad_1).__anonymous_object34[_index0]) /* ?{} */);416 }417 418 }419 420 ((void)((*___dst__4sVad_1).__anonymous_object35) /* ?{} */);421 378 } 422 379 static inline void ___constructor__F_4sVad4sVad_autogen___1(struct Vad *___dst__4sVad_1, struct Vad ___src__4sVad_1){ 423 ((void)((*___dst__4sVad_1).__anonymous_object32=___src__4sVad_1.__anonymous_object32) /* ?{} */);424 ((void)((*___dst__4sVad_1).__anonymous_object33=___src__4sVad_1.__anonymous_object33) /* ?{} */);425 {426 signed int _index1 = 0;427 for (;(_index1<10);((void)(++_index1))) {428 ((void)((*___dst__4sVad_1).__anonymous_object34[_index1]=___src__4sVad_1.__anonymous_object34[_index1]) /* ?{} */);429 }430 431 }432 433 ((void)((*___dst__4sVad_1).__anonymous_object35=___src__4sVad_1.__anonymous_object35) /* ?{} */);434 380 } 435 381 static inline void ___destructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1){ 436 ((void)((*___dst__4sVad_1).__anonymous_object35) /* ^?{} */);437 {438 signed int _index2 = (10-1);439 for (;(_index2>=0);((void)(--_index2))) {440 ((void)((*___dst__4sVad_1).__anonymous_object34[_index2]) /* ^?{} */);441 }442 443 }444 445 ((void)((*___dst__4sVad_1).__anonymous_object33) /* ^?{} */);446 ((void)((*___dst__4sVad_1).__anonymous_object32) /* ^?{} */);447 382 } 448 383 static inline struct Vad ___operator_assign__F4sVad_4sVad4sVad_autogen___1(struct Vad *___dst__4sVad_1, struct Vad ___src__4sVad_1){ 449 384 struct Vad ___ret__4sVad_1; 450 ((void)((*___dst__4sVad_1).__anonymous_object32=___src__4sVad_1.__anonymous_object32));451 ((void)((*___dst__4sVad_1).__anonymous_object33=___src__4sVad_1.__anonymous_object33));452 {453 signed int _index3 = 0;454 for (;(_index3<10);((void)(++_index3))) {455 ((void)((*___dst__4sVad_1).__anonymous_object34[_index3]=___src__4sVad_1.__anonymous_object34[_index3]));456 }457 458 }459 460 ((void)((*___dst__4sVad_1).__anonymous_object35=___src__4sVad_1.__anonymous_object35));461 385 ((void)___constructor__F_4sVad4sVad_autogen___1((&___ret__4sVad_1), (*___dst__4sVad_1))); 462 386 return ___ret__4sVad_1; 463 387 } 464 static inline void ___constructor__F_4sVadi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object46){465 ((void)((*___dst__4sVad_1).__anonymous_object32=__anonymous_object46) /* ?{} */);466 ((void)((*___dst__4sVad_1).__anonymous_object33) /* ?{} */);467 {468 signed int _index4 = 0;469 for (;(_index4<10);((void)(++_index4))) {470 ((void)((*___dst__4sVad_1).__anonymous_object34[_index4]) /* ?{} */);471 }472 473 }