Changeset 1f55a75


Ignore:
Timestamp:
Mar 23, 2021, 9:19:47 PM (2 years ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast-unique-expr, pthread-emulation, qualifiedEnum
Children:
98d9ce9
Parents:
f9c3100 (diff), e825c9d (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.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

Files:
3 added
19 edited
1 moved

Legend:

Unmodified
Added
Removed
  • Jenkins/FullBuild

    rf9c3100 r1f55a75  
    1818
    1919                                parallel (
    20                                         gcc_8_x86_old: { trigger_build( 'gcc-8',   'x86', false ) },
    21                                         gcc_7_x86_old: { trigger_build( 'gcc-7',   'x86', false ) },
    22                                         gcc_6_x86_old: { trigger_build( 'gcc-6',   'x86', false ) },
     20                                        gcc_8_x86_new: { trigger_build( 'gcc-8',   'x86', true ) },
     21                                        gcc_7_x86_new: { trigger_build( 'gcc-7',   'x86', true ) },
     22                                        gcc_6_x86_new: { trigger_build( 'gcc-6',   'x86', true ) },
    2323                                        gcc_9_x64_new: { trigger_build( 'gcc-9',   'x64', true  ) },
    2424                                        gcc_8_x64_new: { trigger_build( 'gcc-8',   'x64', true  ) },
  • libcfa/src/Makefile.am

    rf9c3100 r1f55a75  
    5858        concurrency/iofwd.hfa \
    5959        containers/list.hfa \
     60        containers/queueLockFree.hfa \
    6061        containers/stackLockFree.hfa \
    6162        vec/vec.hfa \
  • libcfa/src/bits/queue.hfa

    rf9c3100 r1f55a75  
    1515        };
    1616
    17         inline {
     17        static inline {
    1818                // wrappers to make Collection have T
    1919                T & head( Queue(T) & q ) with( q ) {
     
    154154        struct QueueIter {
    155155                inline ColIter;                                                                 // Plan 9 inheritance
    156         };     
     156        };
    157157
    158         inline {
     158        static inline {
    159159                void ?{}( QueueIter(T) & qi ) with( qi ) {
    160160                        ((ColIter &)qi){};
  • libcfa/src/bits/weakso_locks.hfa

    rf9c3100 r1f55a75  
    7070static inline void ^?{}( multiple_acquisition_lock & this ) {}
    7171static inline void   lock     ( multiple_acquisition_lock & this ) { lock    ( (blocking_lock &)this ); }
    72 static inline void   try_lock ( multiple_acquisition_lock & this ) { try_lock( (blocking_lock &)this ); }
     72static inline bool   try_lock ( multiple_acquisition_lock & this ) { return try_lock( (blocking_lock &)this ); }
    7373static inline void   unlock   ( multiple_acquisition_lock & this ) { unlock  ( (blocking_lock &)this ); }
    7474static inline void   on_wait  ( multiple_acquisition_lock & this ) { on_wait ( (blocking_lock &)this ); }
  • libcfa/src/concurrency/clib/cfathread.cfa

    rf9c3100 r1f55a75  
    1717#include "locks.hfa"
    1818#include "kernel.hfa"
     19#include "stats.hfa"
    1920#include "thread.hfa"
    2021#include "time.hfa"
    2122
    2223#include "cfathread.h"
     24
     25extern void ?{}(processor &, const char[], cluster &, $thread *);
     26extern "C" {
     27      extern void __cfactx_invoke_thread(void (*main)(void *), void * this);
     28}
     29
     30//================================================================================
     31// Thread run y the C Interface
    2332
    2433struct cfathread_object {
     
    6574}
    6675
    67 processor * procs = 0p;
    68 int proc_cnt = 1;
    69 
     76//================================================================================
     77// Special Init Thread responsible for the initialization or processors
     78struct __cfainit {
     79        $thread self;
     80        void (*init)( void * );
     81        void * arg;
     82};
     83void main(__cfainit & this);
     84void ^?{}(__cfainit & mutex this);
     85
     86static inline $thread * get_thread( __cfainit & this ) { return &this.self; }
     87
     88typedef ThreadCancelled(__cfainit) __cfainit_exception;
     89typedef ThreadCancelled_vtable(__cfainit) __cfainit_vtable;
     90
     91void defaultResumptionHandler(ThreadCancelled(__cfainit) & except) {
     92        abort | "The init thread was cancelled";
     93}
     94
     95__cfainit_vtable ___cfainit_vtable_instance;
     96
     97__cfainit_vtable const & get_exception_vtable(__cfainit_exception *) {
     98        return ___cfainit_vtable_instance;
     99}
     100
     101static void ?{}( __cfainit & this, void (*init)( void * ), void * arg ) {
     102        this.init = init;
     103        this.arg = arg;
     104        ((thread&)this){"Processir Init"};
     105
     106        // Don't use __thrd_start! just prep the context manually
     107        $thread * this_thrd = get_thread(this);
     108        void (*main_p)(__cfainit &) = main;
     109
     110        disable_interrupts();
     111        __cfactx_start(main_p, get_coroutine(this), this, __cfactx_invoke_thread);
     112
     113        this_thrd->context.[SP, FP] = this_thrd->self_cor.context.[SP, FP];
     114        /* paranoid */ verify( this_thrd->context.SP );
     115
     116        this_thrd->state = Ready;
     117        enable_interrupts( __cfaabi_dbg_ctx );
     118}
     119
     120void ^?{}(__cfainit & mutex this) {
     121        ^(this.self){};
     122}
     123
     124void main( __cfainit & this ) {
     125        __attribute__((unused)) void * const thrd_obj = (void*)&this;
     126        __attribute__((unused)) void * const thrd_hdl = (void*)active_thread();
     127        /* paranoid */ verify( thrd_obj == thrd_hdl );
     128
     129        this.init( this.arg );
     130}
     131
     132//================================================================================
     133// Main Api
    70134extern "C" {
    71135        int cfathread_cluster_create(cfathread_cluster_t * cl) __attribute__((nonnull(1))) {
     
    78142        }
    79143
     144        int cfathread_cluster_print_stats( cfathread_cluster_t cl ) {
     145                #if !defined(__CFA_NO_STATISTICS__)
     146                        print_stats_at_exit( *cl, CFA_STATS_READY_Q | CFA_STATS_IO );
     147                        print_stats_now( *cl, CFA_STATS_READY_Q | CFA_STATS_IO );
     148                #endif
     149                return 0;
     150        }
     151
    80152        int cfathread_cluster_add_worker(cfathread_cluster_t cl, pthread_t* tid, void (*init_routine) (void *), void * arg) {
    81                 // processor * proc = new("C-processor", *cl, init_routine, arg);
     153                __cfainit * it = 0p;
     154                if(init_routine) {
     155                        it = alloc();
     156                        (*it){init_routine, arg};
     157                }
    82158                processor * proc = alloc();
    83                 (*proc){ "C-processor", *cl, init_routine, arg };
     159                (*proc){ "C-processor", *cl, get_thread(*it) };
     160
     161                // Wait for the init thread to return before continuing
     162                if(it) {
     163                        ^(*it){};
     164                        free(it);
     165                }
     166
    84167                if(tid) *tid = proc->kernel_thread;
    85168                return 0;
     
    162245        int cfathread_mutex_init(cfathread_mutex_t *restrict mut, const cfathread_mutexattr_t *restrict) __attribute__((nonnull (1))) { *mut = new(); return 0; }
    163246        int cfathread_mutex_destroy(cfathread_mutex_t *mut) __attribute__((nonnull (1))) { delete( *mut ); return 0; }
    164         int cfathread_mutex_lock   (cfathread_mutex_t *mut) __attribute__((nonnull (1))) { lock    ( (*mut)->impl ); return 0; }
    165         int cfathread_mutex_trylock(cfathread_mutex_t *mut) __attribute__((nonnull (1))) { try_lock( (*mut)->impl ); return 0; }
    166         int cfathread_mutex_unlock (cfathread_mutex_t *mut) __attribute__((nonnull (1))) { unlock  ( (*mut)->impl ); return 0; }
     247        int cfathread_mutex_lock   (cfathread_mutex_t *mut) __attribute__((nonnull (1))) { lock( (*mut)->impl ); return 0; }
     248        int cfathread_mutex_unlock (cfathread_mutex_t *mut) __attribute__((nonnull (1))) { unlock( (*mut)->impl ); return 0; }
     249        int cfathread_mutex_trylock(cfathread_mutex_t *mut) __attribute__((nonnull (1))) {
     250                bool ret = try_lock( (*mut)->impl );
     251                if( ret ) return 0;
     252                else return EBUSY;
     253        }
    167254
    168255        //--------------------
  • libcfa/src/concurrency/clib/cfathread.h

    rf9c3100 r1f55a75  
    1313// Update Count     :
    1414//
    15 
    16 #include "stddef.h"
    17 #include "invoke.h"
    1815
    1916#if defined(__cforall) || defined(__cplusplus)
     
    3229        int cfathread_cluster_create(cfathread_cluster_t * cluster);
    3330        cfathread_cluster_t cfathread_cluster_self(void);
     31        int cfathread_cluster_print_stats(cfathread_cluster_t cluster);
    3432        int cfathread_cluster_add_worker(cfathread_cluster_t cluster, pthread_t* tid, void (*init_routine) (void *), void * arg);
    3533        int cfathread_cluster_pause (cfathread_cluster_t cluster);
  • libcfa/src/concurrency/invoke.h

    rf9c3100 r1f55a75  
    224224                }
    225225
     226                static inline $thread * volatile & ?`next ( $thread * this )  __attribute__((const)) {
     227                        return this->seqable.back;
     228                }
     229
    226230                static inline $thread *& Back( $thread * this ) __attribute__((const)) {
    227231                        return this->seqable.back;
  • libcfa/src/concurrency/io.cfa

    rf9c3100 r1f55a75  
    8080        };
    8181
    82         static $io_context * __ioarbiter_allocate( $io_arbiter & mutex this, processor *, __u32 idxs[], __u32 want );
    83         static void __ioarbiter_submit( $io_arbiter & mutex this, $io_context * , __u32 idxs[], __u32 have, bool lazy );
    84         static void __ioarbiter_flush ( $io_arbiter & mutex this, $io_context * );
     82        static $io_context * __ioarbiter_allocate( $io_arbiter & this, __u32 idxs[], __u32 want );
     83        static void __ioarbiter_submit( $io_context * , __u32 idxs[], __u32 have, bool lazy );
     84        static void __ioarbiter_flush ( $io_context & );
    8585        static inline void __ioarbiter_notify( $io_context & ctx );
    8686//=============================================================================================
     
    134134                $io_context & ctx = *proc->io.ctx;
    135135
    136                 if(!ctx.ext_sq.empty) {
    137                         __ioarbiter_flush( *ctx.arbiter, &ctx );
    138                 }
     136                __ioarbiter_flush( ctx );
    139137
    140138                __STATS__( true, io.calls.flush++; )
     
    263261                __cfadbg_print_safe(io, "Kernel I/O : falling back on arbiter for allocation\n");
    264262
    265                 struct $io_context * ret = __ioarbiter_allocate(*ioarb, proc, idxs, want);
     263                struct $io_context * ret = __ioarbiter_allocate(*ioarb, idxs, want);
    266264
    267265                __cfadbg_print_safe(io, "Kernel I/O : slow allocation completed from ring %d\n", ret->fd);
     
    326324                __cfadbg_print_safe(io, "Kernel I/O : falling back on arbiter for submission\n");
    327325
    328                 __ioarbiter_submit(*inctx->arbiter, inctx, idxs, have, lazy);
     326                __ioarbiter_submit(inctx, idxs, have, lazy);
    329327        }
    330328
     
    384382// I/O Arbiter
    385383//=============================================================================================
    386         static $io_context * __ioarbiter_allocate( $io_arbiter & mutex this, processor * proc, __u32 idxs[], __u32 want ) {
     384        static inline void block(__outstanding_io_queue & queue, __outstanding_io & item) {
     385                // Lock the list, it's not thread safe
     386                lock( queue.lock __cfaabi_dbg_ctx2 );
     387                {
     388                        // Add our request to the list
     389                        add( queue.queue, item );
     390
     391                        // Mark as pending
     392                        __atomic_store_n( &queue.empty, false, __ATOMIC_SEQ_CST );
     393                }
     394                unlock( queue.lock );
     395
     396                wait( item.sem );
     397        }
     398
     399        static inline bool empty(__outstanding_io_queue & queue ) {
     400                return __atomic_load_n( &queue.empty, __ATOMIC_SEQ_CST);
     401        }
     402
     403        static $io_context * __ioarbiter_allocate( $io_arbiter & this, __u32 idxs[], __u32 want ) {
    387404                __cfadbg_print_safe(io, "Kernel I/O : arbiter allocating\n");
    388405
     
    390407
    391408                // No one has any resources left, wait for something to finish
    392                 // Mark as pending
    393                 __atomic_store_n( &this.pending.flag, true, __ATOMIC_SEQ_CST );
    394 
    395                 // Wait for our turn to submit
    396                 wait( this.pending.blocked, want );
    397 
    398                 __attribute((unused)) bool ret =
    399                 __alloc( this.pending.ctx, idxs, want);
    400                 /* paranoid */ verify( ret );
    401 
    402                 return this.pending.ctx;
    403 
    404         }
    405 
    406         static void __ioarbiter_notify( $io_arbiter & mutex this, $io_context * ctx ) {
    407                 /* paranoid */ verify( !is_empty(this.pending.blocked) );
    408                 this.pending.ctx = ctx;
    409 
    410                 while( !is_empty(this.pending.blocked) ) {
    411                         __cfadbg_print_safe(io, "Kernel I/O : notifying\n");
    412                         __u32 have = ctx->sq.free_ring.tail - ctx->sq.free_ring.head;
    413                         __u32 want = front( this.pending.blocked );
    414 
    415                         if( have > want ) return;
    416 
    417                         signal_block( this.pending.blocked );
    418                 }
    419 
    420                 this.pending.flag = false;
     409                // We need to add ourself to a list of pending allocs and wait for an answer
     410                __pending_alloc pa;
     411                pa.idxs = idxs;
     412                pa.want = want;
     413
     414                block(this.pending, (__outstanding_io&)pa);
     415
     416                return pa.ctx;
     417
     418        }
     419
     420        static void __ioarbiter_notify( $io_arbiter & this, $io_context * ctx ) {
     421                /* paranoid */ verify( !empty(this.pending.queue) );
     422
     423                lock( this.pending.lock __cfaabi_dbg_ctx2 );
     424                {
     425                        while( !empty(this.pending.queue) ) {
     426                                __cfadbg_print_safe(io, "Kernel I/O : notifying\n");
     427                                __u32 have = ctx->sq.free_ring.tail - ctx->sq.free_ring.head;
     428                                __pending_alloc & pa = (__pending_alloc&)head( this.pending.queue );
     429
     430                                if( have > pa.want ) goto DONE;
     431                                drop( this.pending.queue );
     432
     433                                /* paranoid */__attribute__((unused)) bool ret =
     434
     435                                __alloc(ctx, pa.idxs, pa.want);
     436
     437                                /* paranoid */ verify( ret );
     438
     439                                pa.ctx = ctx;
     440
     441                                post( pa.sem );
     442                        }
     443
     444                        this.pending.empty = true;
     445                        DONE:;
     446                }
     447                unlock( this.pending.lock );
    421448        }
    422449
    423450        static void __ioarbiter_notify( $io_context & ctx ) {
    424                 if(__atomic_load_n( &ctx.arbiter->pending.flag, __ATOMIC_SEQ_CST)) {
     451                if(!empty( ctx.arbiter->pending )) {
    425452                        __ioarbiter_notify( *ctx.arbiter, &ctx );
    426453                }
     
    428455
    429456        // Simply append to the pending
    430         static void __ioarbiter_submit( $io_arbiter & mutex this, $io_context * ctx, __u32 idxs[], __u32 have, bool lazy ) {
     457        static void __ioarbiter_submit( $io_context * ctx, __u32 idxs[], __u32 have, bool lazy ) {
    431458                __cfadbg_print_safe(io, "Kernel I/O : submitting %u from the arbiter to context %u\n", have, ctx->fd);
    432459
    433                 /* paranoid */ verify( &this == ctx->arbiter );
    434 
    435                 // Mark as pending
    436                 __atomic_store_n( &ctx->ext_sq.empty, false, __ATOMIC_SEQ_CST );
    437 
    438460                __cfadbg_print_safe(io, "Kernel I/O : waiting to submit %u\n", have);
    439461
    440                 // Wait for our turn to submit
    441                 wait( ctx->ext_sq.blocked );
    442 
    443                 // Submit our indexes
    444                 __submit(ctx, idxs, have, lazy);
     462                __external_io ei;
     463                ei.idxs = idxs;
     464                ei.have = have;
     465                ei.lazy = lazy;
     466
     467                block(ctx->ext_sq, (__outstanding_io&)ei);
    445468
    446469                __cfadbg_print_safe(io, "Kernel I/O : %u submitted from arbiter\n", have);
    447470        }
    448471
    449         static void __ioarbiter_flush( $io_arbiter & mutex this, $io_context * ctx ) {
    450                 /* paranoid */ verify( &this == ctx->arbiter );
    451 
    452                 __STATS__( false, io.flush.external += 1; )
    453 
    454                 __cfadbg_print_safe(io, "Kernel I/O : arbiter flushing\n");
    455 
    456                 condition & blcked = ctx->ext_sq.blocked;
    457                 /* paranoid */ verify( ctx->ext_sq.empty == is_empty( blcked ) );
    458                 while(!is_empty( blcked )) {
    459                         signal_block( blcked );
    460                 }
    461 
    462                 ctx->ext_sq.empty = true;
     472        static void __ioarbiter_flush( $io_context & ctx ) {
     473                if(!empty( ctx.ext_sq )) {
     474                        __STATS__( false, io.flush.external += 1; )
     475
     476                        __cfadbg_print_safe(io, "Kernel I/O : arbiter flushing\n");
     477
     478                        lock( ctx.ext_sq.lock __cfaabi_dbg_ctx2 );
     479                        {
     480                                while( !empty(ctx.ext_sq.queue) ) {
     481                                        __external_io & ei = (__external_io&)drop( ctx.ext_sq.queue );
     482
     483                                        __submit(&ctx, ei.idxs, ei.have, ei.lazy);
     484
     485                                        post( ei.sem );
     486                                }
     487
     488                                ctx.ext_sq.empty = true;
     489                        }
     490                        unlock(ctx.ext_sq.lock );
     491                }
    463492        }
    464493#endif
  • libcfa/src/concurrency/io/setup.cfa

    rf9c3100 r1f55a75  
    110110                this.arbiter = cl.io.arbiter;
    111111                this.ext_sq.empty = true;
    112                 (this.ext_sq.blocked){};
     112                (this.ext_sq.queue){};
    113113                __io_uring_setup( this, cl.io.params, proc->idle );
    114114                __cfadbg_print_safe(io_core, "Kernel I/O : Created ring for io_context %u (%p)\n", this.fd, &this);
     
    329329//=============================================================================================
    330330        void ?{}( $io_arbiter & this ) {
    331                 this.pending.flag = false;
    332         }
    333 
    334         void ^?{}( $io_arbiter & mutex this ) {
    335                 // /* paranoid */ verify( empty(this.assigned) );
    336                 // /* paranoid */ verify( empty(this.available) );
    337                 /* paranoid */ verify( is_empty(this.pending.blocked) );
    338         }
     331                this.pending.empty = true;
     332        }
     333
     334        void ^?{}( $io_arbiter & this ) {}
    339335
    340336        $io_arbiter * create(void) {
  • libcfa/src/concurrency/io/types.hfa

    rf9c3100 r1f55a75  
    2222
    2323#include "bits/locks.hfa"
     24#include "bits/queue.hfa"
    2425#include "kernel/fwd.hfa"
    2526
     
    9596        };
    9697
     98        struct __outstanding_io {
     99                inline Colable;
     100                single_sem sem;
     101        };
     102        static inline __outstanding_io *& Next( __outstanding_io * n ) { return (__outstanding_io *)Next( (Colable *)n ); }
     103
     104        struct __outstanding_io_queue {
     105                __spinlock_t lock;
     106                Queue(__outstanding_io) queue;
     107                volatile bool empty;
     108        };
     109
     110        struct __external_io {
     111                inline __outstanding_io;
     112                __u32 * idxs;
     113                __u32 have;
     114                bool lazy;
     115        };
     116
     117
    97118        struct __attribute__((aligned(128))) $io_context {
    98119                $io_arbiter * arbiter;
    99120                processor * proc;
    100121
    101                 struct {
    102                         volatile bool empty;
    103                         condition blocked;
    104                 } ext_sq;
     122                __outstanding_io_queue ext_sq;
    105123
    106124                struct __sub_ring_t sq;
     
    110128        };
    111129
    112         monitor __attribute__((aligned(128))) $io_arbiter {
    113                 struct {
    114                         condition blocked;
    115                         $io_context * ctx;
    116                         volatile bool flag;
    117                 } pending;
     130        struct __pending_alloc {
     131                inline __outstanding_io;
     132                __u32 * idxs;
     133                __u32 want;
     134                $io_context * ctx;
     135        };
     136
     137        struct __attribute__((aligned(128))) $io_arbiter {
     138                __outstanding_io_queue pending;
    118139        };
    119140
  • libcfa/src/concurrency/kernel.cfa

    rf9c3100 r1f55a75  
    149149        #endif
    150150
    151         // if we need to run some special setup, now is the time to do it.
    152         if(this->init.fnc) {
    153                 this->init.fnc(this->init.arg);
    154         }
    155 
    156151        {
    157152                // Setup preemption data
     
    162157                #endif
    163158
     159                // if we need to run some special setup, now is the time to do it.
     160                if(this->init.thrd) {
     161                        this->init.thrd->curr_cluster = this->cltr;
     162                        __run_thread(this, this->init.thrd);
     163                }
    164164
    165165                __cfadbg_print_safe(runtime_core, "Kernel : core %p started\n", this);
  • libcfa/src/concurrency/kernel.hfa

    rf9c3100 r1f55a75  
    112112        // it is not a particularly safe scheme as it can make processors less homogeneous
    113113        struct {
    114                 void (*fnc) (void *);
    115                 void * arg;
     114                $thread * thrd;
    116115        } init;
    117116
     
    127126};
    128127
    129 void  ?{}(processor & this, const char name[], struct cluster & cltr, void (*init) (void *), void * arg);
     128void  ?{}(processor & this, const char name[], struct cluster & cltr);
    130129void ^?{}(processor & this);
    131130
    132 static inline void  ?{}(processor & this)                        { this{ "Anonymous Processor", *mainCluster, 0p, 0p}; }
    133 static inline void  ?{}(processor & this, struct cluster & cltr) { this{ "Anonymous Processor", cltr, 0p, 0p}; }
    134 static inline void  ?{}(processor & this, const char name[])     { this{name, *mainCluster, 0p, 0p }; }
     131static inline void  ?{}(processor & this)                        { this{ "Anonymous Processor", *mainCluster}; }
     132static inline void  ?{}(processor & this, struct cluster & cltr) { this{ "Anonymous Processor", cltr}; }
     133static inline void  ?{}(processor & this, const char name[])     { this{name, *mainCluster}; }
    135134
    136135DLISTED_MGD_IMPL_OUT(processor)
  • libcfa/src/concurrency/kernel/startup.cfa

    rf9c3100 r1f55a75  
    7373static void __kernel_first_resume( processor * this );
    7474static void __kernel_last_resume ( processor * this );
    75 static void init(processor & this, const char name[], cluster & _cltr, void (*fnc) (void *), void * arg);
     75static void init(processor & this, const char name[], cluster & _cltr, $thread * initT);
    7676static void deinit(processor & this);
    7777static void doregister( struct cluster & cltr );
     
    198198                ( this.terminated ){};
    199199                ( this.runner ){};
    200                 init( this, "Main Processor", *mainCluster, 0p, 0p );
     200                init( this, "Main Processor", *mainCluster, 0p );
    201201                kernel_thread = pthread_self();
    202202
     
    452452}
    453453
    454 static void init(processor & this, const char name[], cluster & _cltr, void (*fnc) (void *), void * arg) with( this ) {
     454static void init(processor & this, const char name[], cluster & _cltr, $thread * initT) with( this ) {
    455455        this.name = name;
    456456        this.cltr = &_cltr;
     
    464464        this.io.dirty   = false;
    465465
    466         this.init.fnc = fnc;
    467         this.init.arg = arg;
     466        this.init.thrd = initT;
    468467
    469468        this.idle = eventfd(0, 0);
     
    516515}
    517516
    518 void ?{}(processor & this, const char name[], cluster & _cltr, void (*fnc) (void *), void * arg) {
     517void ?{}(processor & this, const char name[], cluster & _cltr, $thread * initT) {
    519518        ( this.terminated ){};
    520519        ( this.runner ){};
    521520
    522521        disable_interrupts();
    523                 init( this, name, _cltr, fnc, arg );
     522                init( this, name, _cltr, initT );
    524523        enable_interrupts( __cfaabi_dbg_ctx );
    525524
     
    527526
    528527        this.stack = __create_pthread( &this.kernel_thread, __invoke_processor, (void *)&this );
    529 
     528}
     529
     530void ?{}(processor & this, const char name[], cluster & _cltr) {
     531        (this){name, _cltr, 0p};
    530532}
    531533
  • libcfa/src/concurrency/locks.hfa

    rf9c3100 r1f55a75  
    3232static inline void ^?{}( single_acquisition_lock & this ) {}
    3333static inline void   lock      ( single_acquisition_lock & this ) { lock    ( (blocking_lock &)this ); }
    34 static inline void   try_lock  ( single_acquisition_lock & this ) { try_lock( (blocking_lock &)this ); }
     34static inline bool   try_lock  ( single_acquisition_lock & this ) { return try_lock( (blocking_lock &)this ); }
    3535static inline void   unlock    ( single_acquisition_lock & this ) { unlock  ( (blocking_lock &)this ); }
    3636static inline void   on_wait   ( single_acquisition_lock & this ) { on_wait ( (blocking_lock &)this ); }
     
    4747static inline void ^?{}( owner_lock & this ) {}
    4848static inline void   lock     ( owner_lock & this ) { lock    ( (blocking_lock &)this ); }
    49 static inline void   try_lock ( owner_lock & this ) { try_lock( (blocking_lock &)this ); }
     49static inline bool   try_lock ( owner_lock & this ) { return try_lock( (blocking_lock &)this ); }
    5050static inline void   unlock   ( owner_lock & this ) { unlock  ( (blocking_lock &)this ); }
    5151static inline void   on_wait  ( owner_lock & this ) { on_wait ( (blocking_lock &)this ); }
  • libcfa/src/concurrency/preemption.cfa

    rf9c3100 r1f55a75  
    1515
    1616#define __cforall_thread__
     17// #define __CFA_DEBUG_PRINT_PREEMPTION__
    1718
    1819#include "preemption.hfa"
     
    2829#include "kernel_private.hfa"
    2930
     31
    3032#if !defined(__CFA_DEFAULT_PREEMPTION__)
    3133#define __CFA_DEFAULT_PREEMPTION__ 10`ms
    3234#endif
    3335
    34 Duration default_preemption() __attribute__((weak)) {
    35         return __CFA_DEFAULT_PREEMPTION__;
     36__attribute__((weak)) Duration default_preemption() {
     37        const char * preempt_rate_s = getenv("CFA_DEFAULT_PREEMPTION");
     38        if(!preempt_rate_s) {
     39                __cfadbg_print_safe(preemption, "No CFA_DEFAULT_PREEMPTION in ENV\n");
     40                return __CFA_DEFAULT_PREEMPTION__;
     41        }
     42
     43        char * endptr = 0p;
     44        long int preempt_rate_l = strtol(preempt_rate_s, &endptr, 10);
     45        if(preempt_rate_l < 0 || preempt_rate_l > 65535) {
     46                __cfadbg_print_safe(preemption, "CFA_DEFAULT_PREEMPTION out of range : %ld\n", preempt_rate_l);
     47                return __CFA_DEFAULT_PREEMPTION__;
     48        }
     49        if('\0' != *endptr) {
     50                __cfadbg_print_safe(preemption, "CFA_DEFAULT_PREEMPTION not a decimal number : %s\n", preempt_rate_s);
     51                return __CFA_DEFAULT_PREEMPTION__;
     52        }
     53
     54        return preempt_rate_l`ms;
    3655}
    3756
     
    125144        // If there are still alarms pending, reset the timer
    126145        if( & (*alarms)`first ) {
    127                 __cfadbg_print_buffer_decl(preemption, " KERNEL: @%ju(%ju) resetting alarm to %ju.\n", currtime.tv, __kernel_get_time().tv, (alarms->head->alarm - currtime).tv);
    128146                Duration delta = (*alarms)`first.alarm - currtime;
    129147                Duration capped = max(delta, 50`us);
    130                 // itimerval tim  = { caped };
    131                 // __cfaabi_dbg_print_buffer_local( "    Values are %lu, %lu, %lu %lu.\n", delta.tv, caped.tv, tim.it_value.tv_sec, tim.it_value.tv_usec);
    132 
    133148                __kernel_set_timer( capped );
    134149        }
  • tests/.expect/attributes.nast.arm64.txt

    rf9c3100 r1f55a75  
    66
    77}
    8 struct __attribute__ ((unused)) __anonymous0 {
     8struct __anonymous0 {
    99};
    1010static inline void _X12_constructorFv_S12__anonymous0_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1);
     
    2626    return _X4_retS12__anonymous0_1;
    2727}
     28__attribute__ ((unused)) struct __anonymous0 _X5DummyS12__anonymous0_1;
    2829struct __attribute__ ((unused)) Agn1;
    2930struct __attribute__ ((unused)) Agn2 {
     
    103104    __attribute__ ((used,unused,unused)) signed int _X2f7i_1;
    104105    __attribute__ ((used,used,unused)) signed int _X2f8i_1;
    105     __attribute__ ((unused,unused)) signed int *_X2f9Pi_1;
     106    __attribute__ ((unused)) signed int *_X2f9Pi_1;
     107    __attribute__ ((unused,used)) signed int *_X3f10Pi_1;
     108    __attribute__ ((unused,unused)) signed int *_X3f11Pi_1;
     109    __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1;
     110    __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1;
     111    __attribute__ ((unused,unused,unused)) signed int *_X3f14Pi_1;
    106112};
    107113static inline void _X12_constructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1);
     
    117123static inline void _X12_constructorFv_S3Fdliiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1);
    118124static inline void _X12_constructorFv_S3Fdliiiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1);
    119 static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused,unused)) signed int *_X2f9Pi_1);
     125static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1);
     126static inline void _X12_constructorFv_S3FdliiiiiiiiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1);
     127static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1);
     128static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1);
     129static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1);
     130static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f14Pi_1);
    120131static inline void _X12_constructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1){
    121132    {
     
    155166    }
    156167
     168    {
     169        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     170    }
     171
     172    {
     173        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     174    }
     175
     176    {
     177        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     178    }
     179
     180    {
     181        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     182    }
     183
     184    {
     185        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     186    }
     187
    157188}
    158189static inline void _X12_constructorFv_S3FdlS3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1, struct Fdl _X4_srcS3Fdl_1){
     
    193224    }
    194225
     226    {
     227        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X4_srcS3Fdl_1._X3f10Pi_1) /* ?{} */);
     228    }
     229
     230    {
     231        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X4_srcS3Fdl_1._X3f11Pi_1) /* ?{} */);
     232    }
     233
     234    {
     235        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X4_srcS3Fdl_1._X3f12Pi_1) /* ?{} */);
     236    }
     237
     238    {
     239        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X4_srcS3Fdl_1._X3f13Pi_1) /* ?{} */);
     240    }
     241
     242    {
     243        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1=_X4_srcS3Fdl_1._X3f14Pi_1) /* ?{} */);
     244    }
     245
    195246}
    196247static inline void _X11_destructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1){
     248    {
     249        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ^?{} */);
     250    }
     251
     252    {
     253        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ^?{} */);
     254    }
     255
     256    {
     257        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ^?{} */);
     258    }
     259
     260    {
     261        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ^?{} */);
     262    }
     263
     264    {
     265        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ^?{} */);
     266    }
     267
    197268    {
    198269        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ^?{} */);
     
    271342
    272343    {
     344        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X4_srcS3Fdl_1._X3f10Pi_1));
     345    }
     346
     347    {
     348        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X4_srcS3Fdl_1._X3f11Pi_1));
     349    }
     350
     351    {
     352        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X4_srcS3Fdl_1._X3f12Pi_1));
     353    }
     354
     355    {
     356        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X4_srcS3Fdl_1._X3f13Pi_1));
     357    }
     358
     359    {
     360        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1=_X4_srcS3Fdl_1._X3f14Pi_1));
     361    }
     362
     363    {
    273364        ((void)_X12_constructorFv_S3FdlS3Fdl_autogen___1((&_X4_retS3Fdl_1), (*_X4_dstS3Fdl_1)));
    274365    }
     
    313404    }
    314405
     406    {
     407        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     408    }
     409
     410    {
     411        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     412    }
     413
     414    {
     415        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     416    }
     417
     418    {
     419        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     420    }
     421
     422    {
     423        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     424    }
     425
    315426}
    316427static inline void _X12_constructorFv_S3Fdlii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1){
     
    351462    }
    352463
     464    {
     465        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     466    }
     467
     468    {
     469        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     470    }
     471
     472    {
     473        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     474    }
     475
     476    {
     477        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     478    }
     479
     480    {
     481        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     482    }
     483
    353484}
    354485static inline void _X12_constructorFv_S3Fdliii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1){
     
    389520    }
    390521
     522    {
     523        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     524    }
     525
     526    {
     527        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     528    }
     529
     530    {
     531        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     532    }
     533
     534    {
     535        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     536    }
     537
     538    {
     539        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     540    }
     541
    391542}
    392543static inline void _X12_constructorFv_S3Fdliiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1){
     
    427578    }
    428579
     580    {
     581        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     582    }
     583
     584    {
     585        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     586    }
     587
     588    {
     589        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     590    }
     591
     592    {
     593        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     594    }
     595
     596    {
     597        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     598    }
     599
    429600}
    430601static inline void _X12_constructorFv_S3Fdliiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1){
     
    465636    }
    466637
     638    {
     639        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     640    }
     641
     642    {
     643        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     644    }
     645
     646    {
     647        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     648    }
     649
     650    {
     651        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     652    }
     653
     654    {
     655        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     656    }
     657
    467658}
    468659static inline void _X12_constructorFv_S3Fdliiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1){
     
    503694    }
    504695
     696    {
     697        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     698    }
     699
     700    {
     701        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     702    }
     703
     704    {
     705        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     706    }
     707
     708    {
     709        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     710    }
     711
     712    {
     713        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     714    }
     715
    505716}
    506717static inline void _X12_constructorFv_S3Fdliiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1){
     
    541752    }
    542753
     754    {
     755        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     756    }
     757
     758    {
     759        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     760    }
     761
     762    {
     763        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     764    }
     765
     766    {
     767        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     768    }
     769
     770    {
     771        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     772    }
     773
    543774}
    544775static inline void _X12_constructorFv_S3Fdliiiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1){
     
    579810    }
    580811
    581 }
    582 static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused,unused)) signed int *_X2f9Pi_1){
     812    {
     813        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     814    }
     815
     816    {
     817        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     818    }
     819
     820    {
     821        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     822    }
     823
     824    {
     825        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     826    }
     827
     828    {
     829        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     830    }
     831
     832}
     833static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1){
    583834    {
    584835        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     
    615866    {
    616867        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     868    }
     869
     870    {
     871        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     872    }
     873
     874    {
     875        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     876    }
     877
     878    {
     879        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     880    }
     881
     882    {
     883        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     884    }
     885
     886    {
     887        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     888    }
     889
     890}
     891static inline void _X12_constructorFv_S3FdliiiiiiiiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1){
     892    {
     893        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     894    }
     895
     896    {
     897        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     898    }
     899
     900    {
     901        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     902    }
     903
     904    {
     905        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     906    }
     907
     908    {
     909        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     910    }
     911
     912    {
     913        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     914    }
     915
     916    {
     917        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     918    }
     919
     920    {
     921        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     922    }
     923
     924    {
     925        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     926    }
     927
     928    {
     929        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     930    }
     931
     932    {
     933        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     934    }
     935
     936    {
     937        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     938    }
     939
     940    {
     941        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     942    }
     943
     944    {
     945        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     946    }
     947
     948}
     949static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1){
     950    {
     951        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     952    }
     953
     954    {
     955        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     956    }
     957
     958    {
     959        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     960    }
     961
     962    {
     963        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     964    }
     965
     966    {
     967        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     968    }
     969
     970    {
     971        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     972    }
     973
     974    {
     975        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     976    }
     977
     978    {
     979        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     980    }
     981
     982    {
     983        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     984    }
     985
     986    {
     987        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     988    }
     989
     990    {
     991        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     992    }
     993
     994    {
     995        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     996    }
     997
     998    {
     999        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     1000    }
     1001
     1002    {
     1003        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     1004    }
     1005
     1006}
     1007static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1){
     1008    {
     1009        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     1010    }
     1011
     1012    {
     1013        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     1014    }
     1015
     1016    {
     1017        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     1018    }
     1019
     1020    {
     1021        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     1022    }
     1023
     1024    {
     1025        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     1026    }
     1027
     1028    {
     1029        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     1030    }
     1031
     1032    {
     1033        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     1034    }
     1035
     1036    {
     1037        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     1038    }
     1039
     1040    {
     1041        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     1042    }
     1043
     1044    {
     1045        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     1046    }
     1047
     1048    {
     1049        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     1050    }
     1051
     1052    {
     1053        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X3f12Pi_1) /* ?{} */);
     1054    }
     1055
     1056    {
     1057        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     1058    }
     1059
     1060    {
     1061        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     1062    }
     1063
     1064}
     1065static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1){
     1066    {
     1067        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     1068    }
     1069
     1070    {
     1071        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     1072    }
     1073
     1074    {
     1075        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     1076    }
     1077
     1078    {
     1079        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     1080    }
     1081
     1082    {
     1083        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     1084    }
     1085
     1086    {
     1087        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     1088    }
     1089
     1090    {
     1091        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     1092    }
     1093
     1094    {
     1095        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     1096    }
     1097
     1098    {
     1099        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     1100    }
     1101
     1102    {
     1103        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     1104    }
     1105
     1106    {
     1107        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     1108    }
     1109
     1110    {
     1111        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X3f12Pi_1) /* ?{} */);
     1112    }
     1113
     1114    {
     1115        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X3f13Pi_1) /* ?{} */);
     1116    }
     1117
     1118    {
     1119        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     1120    }
     1121
     1122}
     1123static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f14Pi_1){
     1124    {
     1125        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     1126    }
     1127
     1128    {
     1129        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     1130    }
     1131
     1132    {
     1133        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     1134    }
     1135
     1136    {
     1137        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     1138    }
     1139
     1140    {
     1141        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     1142    }
     1143
     1144    {
     1145        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     1146    }
     1147
     1148    {
     1149        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     1150    }
     1151
     1152    {
     1153        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     1154    }
     1155
     1156    {
     1157        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     1158    }
     1159
     1160    {
     1161        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     1162    }
     1163
     1164    {
     1165        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     1166    }
     1167
     1168    {
     1169        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X3f12Pi_1) /* ?{} */);
     1170    }
     1171
     1172    {
     1173        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X3f13Pi_1) /* ?{} */);
     1174    }
     1175
     1176    {
     1177        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1=_X3f14Pi_1) /* ?{} */);
    6171178    }
    6181179
     
    6271188__attribute__ ((used,used,used,used)) const signed int (*_X3vd7Fi___1)();
    6281189__attribute__ ((used,used,unused,used,used)) const signed int (*_X3vd8Fi___1)();
     1190__attribute__ ((used,used,used,used)) const signed int (*_X3vd9Fi___1)();
     1191__attribute__ ((used,used,unused,used,used)) const signed int (*_X4vd10Fi___1)();
    6291192__attribute__ ((unused,used)) signed int _X2f1Fi___1();
    6301193__attribute__ ((unused)) signed int _X2f1Fi___1(){
     
    6361199}
    6371200__attribute__ ((unused,used,unused)) signed int (*_X2f3FPA0i_i__1(signed int __anonymous_object0))[];
    638 __attribute__ ((unused,unused)) signed int (*_X2f3FPA0i_i__1(signed int _X1pi_1))[]{
    639     __attribute__ ((unused)) signed int (*_X10_retval_f3PA0i_1)[];
    640 }
    641 __attribute__ ((unused,used,unused)) signed int (*_X2f4FFi_i____1())(signed int __param_0);
    642 __attribute__ ((unused,unused)) signed int (*_X2f4FFi_i____1())(signed int __param_0){
    643     __attribute__ ((unused)) signed int (*_X10_retval_f4Fi_i__1)(signed int __param_0);
     1201__attribute__ ((unused,used,unused,unused)) signed int (*_X2f4FPA0i_i__1(signed int __anonymous_object1))[];
     1202__attribute__ ((unused,unused)) signed int (*_X2f5FPA0i_i__1(signed int _X1pi_1))[]{
     1203    __attribute__ ((unused)) signed int (*_X10_retval_f5PA0i_1)[];
     1204}
     1205__attribute__ ((unused,unused)) signed int (*_X2f6FPA0i_i__1(signed int _X1pi_1))[]{
     1206    __attribute__ ((unused)) signed int (*_X10_retval_f6PA0i_1)[];
     1207}
     1208__attribute__ ((unused,used,unused)) signed int (*_X2f7FFi_i____1())(signed int __param_0);
     1209__attribute__ ((unused,unused)) signed int (*_X2f8FFi_i____1())(signed int __param_0){
     1210    __attribute__ ((unused)) signed int (*_X10_retval_f8Fi_i__1)(signed int __param_0);
     1211}
     1212__attribute__ ((unused,unused)) signed int (*_X2f9FFi_i____1())(signed int __param_0){
     1213    __attribute__ ((unused)) signed int (*_X10_retval_f9Fi_i__1)(signed int __param_0);
     1214}
     1215__attribute__ ((unused,unused)) signed int (*_X3f10FFi_i____1())(signed int __param_0){
     1216    __attribute__ ((unused)) signed int (*_X11_retval_f10Fi_i__1)(signed int __param_0);
    6441217}
    6451218signed int _X3vtrFi___1(){
     
    6491222    __attribute__ ((unused,unused,unused)) signed int _X2t3A0i_2[((unsigned long int )5)];
    6501223    __attribute__ ((unused,unused,unused,unused,unused)) signed int **_X2t4A0PPi_2[((unsigned long int )5)];
    651     __attribute__ ((unused,unused,unused)) signed int _X2t5Fi___2();
     1224    __attribute__ ((unused,unused,unused,unused,unused,unused)) signed int **_X2t5A0PPi_2[((unsigned long int )5)];
     1225    __attribute__ ((unused,unused,unused)) signed int _X2t6Fi___2();
    6521226    __attribute__ ((unused,unused,unused,unused)) signed int *_X2t6FPi___2();
    6531227}
     
    6711245signed int _X4tpr2Fi_PPi__1(__attribute__ ((unused,unused,unused,unused,unused,unused)) signed int **_X3FooPPi_1);
    6721246signed int _X4tpr3Fi_Pi__1(__attribute__ ((unused,unused,unused)) signed int *_X3FooPi_1);
    673 signed int _X4tpr4Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object1)(signed int __param_0[((unsigned long int )5)]));
     1247signed int _X4tpr4Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object2)(signed int __param_0[((unsigned long int )5)]));
    6741248signed int _X4tpr5Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*_X3FooFi___1)());
    6751249signed int _X4tpr6Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*_X3FooFi___1)());
    676 signed int _X4tpr7Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object2)(signed int (*__param_0)(signed int __param_0)));
     1250signed int _X4tpr7Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object3)(signed int (*__param_0)(signed int __param_0)));
    6771251signed int _X2adFi___1(){
    6781252    __attribute__ ((unused)) signed int _X10_retval_adi_1;
     
    7761350
    7771351}
    778 signed int _X4apd1Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object3, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object4);
    779 signed int _X4apd2Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object5, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object6);
    780 signed int _X4apd3Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object7, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object8);
    781 signed int _X4apd4Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object9)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object10)());
    782 signed int _X4apd5Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object11)(signed int __param_0), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object12)(signed int __param_0));
    783 signed int _X4apd6Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object13)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object14)());
    784 signed int _X4apd7Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object15)(signed int __param_0), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object16)(signed int __param_0));
     1352signed int _X4apd1Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object4, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object5);
     1353signed int _X4apd2Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object6, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object7);
     1354signed int _X4apd3Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object8, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object9);
     1355signed int _X4apd4Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object10)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object11)());
     1356signed int _X4apd5Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object12)(signed int __param_0), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object13)(signed int __param_0));
     1357signed int _X4apd6Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object14)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object15)());
     1358signed int _X4apd7Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object16)(signed int __param_0), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object17)(signed int __param_0));
    7851359struct Vad {
    7861360    __attribute__ ((unused)) signed int :4;
  • tests/.expect/attributes.oast.x64.txt

    rf9c3100 r1f55a75  
    104104    __attribute__ ((used,unused,unused)) signed int _X2f7i_1;
    105105    __attribute__ ((used,used,unused)) signed int _X2f8i_1;
    106     __attribute__ ((unused,unused)) signed int *_X2f9Pi_1;
     106    __attribute__ ((unused)) signed int *_X2f9Pi_1;
     107    __attribute__ ((unused,used)) signed int *_X3f10Pi_1;
     108    __attribute__ ((unused,unused)) signed int *_X3f11Pi_1;
     109    __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1;
     110    __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1;
     111    __attribute__ ((unused,unused,unused)) signed int *_X3f14Pi_1;
    107112};
    108113static inline void _X12_constructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1);
     
    118123static inline void _X12_constructorFv_S3Fdliiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1);
    119124static inline void _X12_constructorFv_S3Fdliiiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1);
    120 static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused,unused)) signed int *_X2f9Pi_1);
     125static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1);
     126static inline void _X12_constructorFv_S3FdliiiiiiiiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1);
     127static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1);
     128static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1);
     129static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1);
     130static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f14Pi_1);
    121131static inline void _X12_constructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1){
    122132    {
     
    156166    }
    157167
     168    {
     169        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     170    }
     171
     172    {
     173        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     174    }
     175
     176    {
     177        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     178    }
     179
     180    {
     181        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     182    }
     183
     184    {
     185        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     186    }
     187
    158188}
    159189static inline void _X12_constructorFv_S3FdlS3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1, struct Fdl _X4_srcS3Fdl_1){
     
    194224    }
    195225
     226    {
     227        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X4_srcS3Fdl_1._X3f10Pi_1) /* ?{} */);
     228    }
     229
     230    {
     231        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X4_srcS3Fdl_1._X3f11Pi_1) /* ?{} */);
     232    }
     233
     234    {
     235        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X4_srcS3Fdl_1._X3f12Pi_1) /* ?{} */);
     236    }
     237
     238    {
     239        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X4_srcS3Fdl_1._X3f13Pi_1) /* ?{} */);
     240    }
     241
     242    {
     243        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1=_X4_srcS3Fdl_1._X3f14Pi_1) /* ?{} */);
     244    }
     245
    196246}
    197247static inline void _X11_destructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1){
     248    {
     249        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ^?{} */);
     250    }
     251
     252    {
     253        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ^?{} */);
     254    }
     255
     256    {
     257        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ^?{} */);
     258    }
     259
     260    {
     261        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ^?{} */);
     262    }
     263
     264    {
     265        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ^?{} */);
     266    }
     267
    198268    {
    199269        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ^?{} */);
     
    272342
    273343    {
     344        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X4_srcS3Fdl_1._X3f10Pi_1));
     345    }
     346
     347    {
     348        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X4_srcS3Fdl_1._X3f11Pi_1));
     349    }
     350
     351    {
     352        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X4_srcS3Fdl_1._X3f12Pi_1));
     353    }
     354
     355    {
     356        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X4_srcS3Fdl_1._X3f13Pi_1));
     357    }
     358
     359    {
     360        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1=_X4_srcS3Fdl_1._X3f14Pi_1));
     361    }
     362
     363    {
    274364        ((void)_X12_constructorFv_S3FdlS3Fdl_autogen___1((&_X4_retS3Fdl_1), (*_X4_dstS3Fdl_1)));
    275365    }
     
    314404    }
    315405
     406    {
     407        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     408    }
     409
     410    {
     411        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     412    }
     413
     414    {
     415        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     416    }
     417
     418    {
     419        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     420    }
     421
     422    {
     423        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     424    }
     425
    316426}
    317427static inline void _X12_constructorFv_S3Fdlii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1){
     
    352462    }
    353463
     464    {
     465        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     466    }
     467
     468    {
     469        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     470    }
     471
     472    {
     473        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     474    }
     475
     476    {
     477        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     478    }
     479
     480    {
     481        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     482    }
     483
    354484}
    355485static inline void _X12_constructorFv_S3Fdliii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1){
     
    390520    }
    391521
     522    {
     523        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     524    }
     525
     526    {
     527        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     528    }
     529
     530    {
     531        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     532    }
     533
     534    {
     535        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     536    }
     537
     538    {
     539        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     540    }
     541
    392542}
    393543static inline void _X12_constructorFv_S3Fdliiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1){
     
    428578    }
    429579
     580    {
     581        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     582    }
     583
     584    {
     585        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     586    }
     587
     588    {
     589        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     590    }
     591
     592    {
     593        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     594    }
     595
     596    {
     597        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     598    }
     599
    430600}
    431601static inline void _X12_constructorFv_S3Fdliiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1){
     
    466636    }
    467637
     638    {
     639        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     640    }
     641
     642    {
     643        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     644    }
     645
     646    {
     647        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     648    }
     649
     650    {
     651        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     652    }
     653
     654    {
     655        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     656    }
     657
    468658}
    469659static inline void _X12_constructorFv_S3Fdliiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1){
     
    504694    }
    505695
     696    {
     697        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     698    }
     699
     700    {
     701        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     702    }
     703
     704    {
     705        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     706    }
     707
     708    {
     709        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     710    }
     711
     712    {
     713        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     714    }
     715
    506716}
    507717static inline void _X12_constructorFv_S3Fdliiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1){
     
    542752    }
    543753
     754    {
     755        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     756    }
     757
     758    {
     759        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     760    }
     761
     762    {
     763        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     764    }
     765
     766    {
     767        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     768    }
     769
     770    {
     771        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     772    }
     773
    544774}
    545775static inline void _X12_constructorFv_S3Fdliiiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1){
     
    580810    }
    581811
    582 }
    583 static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused,unused)) signed int *_X2f9Pi_1){
     812    {
     813        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     814    }
     815
     816    {
     817        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     818    }
     819
     820    {
     821        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     822    }
     823
     824    {
     825        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     826    }
     827
     828    {
     829        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     830    }
     831
     832}
     833static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1){
    584834    {
    585835        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     
    616866    {
    617867        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     868    }
     869
     870    {
     871        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     872    }
     873
     874    {
     875        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     876    }
     877
     878    {
     879        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     880    }
     881
     882    {
     883        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     884    }
     885
     886    {
     887        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     888    }
     889
     890}
     891static inline void _X12_constructorFv_S3FdliiiiiiiiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1){
     892    {
     893        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     894    }
     895
     896    {
     897        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     898    }
     899
     900    {
     901        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     902    }
     903
     904    {
     905        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     906    }
     907
     908    {
     909        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     910    }
     911
     912    {
     913        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     914    }
     915
     916    {
     917        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     918    }
     919
     920    {
     921        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     922    }
     923
     924    {
     925        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     926    }
     927
     928    {
     929        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     930    }
     931
     932    {
     933        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     934    }
     935
     936    {
     937        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     938    }
     939
     940    {
     941        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     942    }
     943
     944    {
     945        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     946    }
     947
     948}
     949static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1){
     950    {
     951        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     952    }
     953
     954    {
     955        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     956    }
     957
     958    {
     959        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     960    }
     961
     962    {
     963        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     964    }
     965
     966    {
     967        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     968    }
     969
     970    {
     971        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     972    }
     973
     974    {
     975        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     976    }
     977
     978    {
     979        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     980    }
     981
     982    {
     983        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     984    }
     985
     986    {
     987        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     988    }
     989
     990    {
     991        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     992    }
     993
     994    {
     995        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     996    }
     997
     998    {
     999        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     1000    }
     1001
     1002    {
     1003        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     1004    }
     1005
     1006}
     1007static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1){
     1008    {
     1009        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     1010    }
     1011
     1012    {
     1013        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     1014    }
     1015
     1016    {
     1017        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     1018    }
     1019
     1020    {
     1021        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     1022    }
     1023
     1024    {
     1025        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     1026    }
     1027
     1028    {
     1029        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     1030    }
     1031
     1032    {
     1033        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     1034    }
     1035
     1036    {
     1037        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     1038    }
     1039
     1040    {
     1041        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     1042    }
     1043
     1044    {
     1045        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     1046    }
     1047
     1048    {
     1049        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     1050    }
     1051
     1052    {
     1053        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X3f12Pi_1) /* ?{} */);
     1054    }
     1055
     1056    {
     1057        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     1058    }
     1059
     1060    {
     1061        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     1062    }
     1063
     1064}
     1065static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1){
     1066    {
     1067        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     1068    }
     1069
     1070    {
     1071        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     1072    }
     1073
     1074    {
     1075        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     1076    }
     1077
     1078    {
     1079        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     1080    }
     1081
     1082    {
     1083        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     1084    }
     1085
     1086    {
     1087        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     1088    }
     1089
     1090    {
     1091        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     1092    }
     1093
     1094    {
     1095        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     1096    }
     1097
     1098    {
     1099        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     1100    }
     1101
     1102    {
     1103        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     1104    }
     1105
     1106    {
     1107        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     1108    }
     1109
     1110    {
     1111        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X3f12Pi_1) /* ?{} */);
     1112    }
     1113
     1114    {
     1115        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X3f13Pi_1) /* ?{} */);
     1116    }
     1117
     1118    {
     1119        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     1120    }
     1121
     1122}
     1123static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f14Pi_1){
     1124    {
     1125        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     1126    }
     1127
     1128    {
     1129        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     1130    }
     1131
     1132    {
     1133        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     1134    }
     1135
     1136    {
     1137        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     1138    }
     1139
     1140    {
     1141        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     1142    }
     1143
     1144    {
     1145        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     1146    }
     1147
     1148    {
     1149        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     1150    }
     1151
     1152    {
     1153        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     1154    }
     1155
     1156    {
     1157        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     1158    }
     1159
     1160    {
     1161        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     1162    }
     1163
     1164    {
     1165        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     1166    }
     1167
     1168    {
     1169        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X3f12Pi_1) /* ?{} */);
     1170    }
     1171
     1172    {
     1173        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X3f13Pi_1) /* ?{} */);
     1174    }
     1175
     1176    {
     1177        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1=_X3f14Pi_1) /* ?{} */);
    6181178    }
    6191179
     
    6281188__attribute__ ((used,used,used,used)) const signed int (*_X3vd7Fi___1)();
    6291189__attribute__ ((used,used,unused,used,used)) const signed int (*_X3vd8Fi___1)();
     1190__attribute__ ((used,used,used,used)) const signed int (*_X3vd9Fi___1)();
     1191__attribute__ ((used,used,unused,used,used)) const signed int (*_X4vd10Fi___1)();
    6301192__attribute__ ((unused,used)) signed int _X2f1Fi___1();
    6311193__attribute__ ((unused)) signed int _X2f1Fi___1(){
     
    6371199}
    6381200__attribute__ ((unused,used,unused)) signed int (*_X2f3FPA0i_i__1(signed int __anonymous_object0))[];
    639 __attribute__ ((unused,unused)) signed int (*_X2f3FPA0i_i__1(signed int _X1pi_1))[]{
    640     __attribute__ ((unused)) signed int (*_X10_retval_f3PA0i_1)[];
    641 }
    642 __attribute__ ((unused,used,unused)) signed int (*_X2f4FFi_i____1())(signed int __anonymous_object1);
    643 __attribute__ ((unused,unused)) signed int (*_X2f4FFi_i____1())(__attribute__ ((unused)) signed int __anonymous_object2){
    644     __attribute__ ((unused)) signed int (*_X10_retval_f4Fi_i__1)(signed int __anonymous_object3);
     1201__attribute__ ((unused,used,unused,unused)) signed int (*_X2f4FPA0i_i__1(signed int __anonymous_object1))[];
     1202__attribute__ ((unused,unused)) signed int (*_X2f5FPA0i_i__1(signed int _X1pi_1))[]{
     1203    __attribute__ ((unused)) signed int (*_X10_retval_f5PA0i_1)[];
     1204}
     1205__attribute__ ((unused,unused)) signed int (*_X2f6FPA0i_i__1(signed int _X1pi_1))[]{
     1206    __attribute__ ((unused)) signed int (*_X10_retval_f6PA0i_1)[];
     1207}
     1208__attribute__ ((unused,used,unused)) signed int (*_X2f7FFi_i____1())(signed int __anonymous_object2);
     1209__attribute__ ((unused,unused)) signed int (*_X2f8FFi_i____1())(__attribute__ ((unused)) signed int __anonymous_object3){
     1210    __attribute__ ((unused)) signed int (*_X10_retval_f8Fi_i__1)(signed int __anonymous_object4);
     1211}
     1212__attribute__ ((unused,unused)) signed int (*_X2f9FFi_i____1())(__attribute__ ((unused)) signed int __anonymous_object5){
     1213    __attribute__ ((unused)) signed int (*_X10_retval_f9Fi_i__1)(signed int __anonymous_object6);
     1214}
     1215__attribute__ ((unused,unused)) signed int (*_X3f10FFi_i____1())(__attribute__ ((unused)) signed int __anonymous_object7){
     1216    __attribute__ ((unused)) signed int (*_X11_retval_f10Fi_i__1)(signed int __anonymous_object8);
    6451217}
    6461218signed int _X3vtrFi___1(){
     
    6501222    __attribute__ ((unused,unused,unused)) signed int _X2t3A0i_2[((unsigned long int )5)];
    6511223    __attribute__ ((unused,unused,unused,unused,unused)) signed int **_X2t4A0PPi_2[((unsigned long int )5)];
    652     __attribute__ ((unused,unused,unused)) signed int _X2t5Fi___2();
     1224    __attribute__ ((unused,unused,unused,unused,unused,unused)) signed int **_X2t5A0PPi_2[((unsigned long int )5)];
     1225    __attribute__ ((unused,unused,unused)) signed int _X2t6Fi___2();
    6531226    __attribute__ ((unused,unused,unused,unused)) signed int *_X2t6FPi___2();
    6541227}
     
    6721245signed int _X4tpr2Fi_PPi__1(__attribute__ ((unused,unused,unused,unused,unused,unused)) signed int **_X3FooPPi_1);
    6731246signed int _X4tpr3Fi_Pi__1(__attribute__ ((unused,unused,unused)) signed int *_X3FooPi_1);
    674 signed int _X4tpr4Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object4)(__attribute__ ((unused,unused)) signed int __anonymous_object5[((unsigned long int )5)]));
     1247signed int _X4tpr4Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object9)(__attribute__ ((unused,unused)) signed int __anonymous_object10[((unsigned long int )5)]));
    6751248signed int _X4tpr5Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*_X3FooFi___1)());
    6761249signed int _X4tpr6Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*_X3FooFi___1)());
    677 signed int _X4tpr7Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object6)(__attribute__ ((unused)) signed int (*__anonymous_object7)(__attribute__ ((unused,unused)) signed int __anonymous_object8)));
     1250signed int _X4tpr7Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object11)(__attribute__ ((unused)) signed int (*__anonymous_object12)(__attribute__ ((unused,unused)) signed int __anonymous_object13)));
    6781251signed int _X2adFi___1(){
    6791252    __attribute__ ((unused)) signed int _X10_retval_adi_1;
     
    7771350
    7781351}
    779 signed int _X4apd1Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object9, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object10);
    780 signed int _X4apd2Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object11, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object12);
    781 signed int _X4apd3Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object13, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object14);
    782 signed int _X4apd4Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object15)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object16)());
    783 signed int _X4apd5Fi_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));
    784 signed int _X4apd6Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object21)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object22)());
    785 signed int _X4apd7Fi_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));
     1352signed int _X4apd1Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object14, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object15);
     1353signed int _X4apd2Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object16, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object17);
     1354signed int _X4apd3Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object18, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object19);
     1355signed int _X4apd4Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object20)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object21)());
     1356signed int _X4apd5Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object22)(__attribute__ ((unused)) signed int __anonymous_object23), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object24)(__attribute__ ((unused)) signed int __anonymous_object25));
     1357signed int _X4apd6Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object26)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object27)());
     1358signed int _X4apd7Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object28)(__attribute__ ((unused)) signed int __anonymous_object29), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object30)(__attribute__ ((unused)) signed int __anonymous_object31));
    7861359struct Vad {
    7871360    __attribute__ ((unused)) signed int :4;
  • tests/.expect/attributes.oast.x86.txt

    rf9c3100 r1f55a75  
    104104    __attribute__ ((used,unused,unused)) signed int _X2f7i_1;
    105105    __attribute__ ((used,used,unused)) signed int _X2f8i_1;
    106     __attribute__ ((unused,unused)) signed int *_X2f9Pi_1;
     106    __attribute__ ((unused)) signed int *_X2f9Pi_1;
     107    __attribute__ ((unused,used)) signed int *_X3f10Pi_1;
     108    __attribute__ ((unused,unused)) signed int *_X3f11Pi_1;
     109    __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1;
     110    __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1;
     111    __attribute__ ((unused,unused,unused)) signed int *_X3f14Pi_1;
    107112};
    108113static inline void _X12_constructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1);
     
    118123static inline void _X12_constructorFv_S3Fdliiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1);
    119124static inline void _X12_constructorFv_S3Fdliiiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1);
    120 static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused,unused)) signed int *_X2f9Pi_1);
     125static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1);
     126static inline void _X12_constructorFv_S3FdliiiiiiiiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1);
     127static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1);
     128static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1);
     129static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1);
     130static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f14Pi_1);
    121131static inline void _X12_constructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1){
    122132    {
     
    156166    }
    157167
     168    {
     169        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     170    }
     171
     172    {
     173        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     174    }
     175
     176    {
     177        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     178    }
     179
     180    {
     181        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     182    }
     183
     184    {
     185        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     186    }
     187
    158188}
    159189static inline void _X12_constructorFv_S3FdlS3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1, struct Fdl _X4_srcS3Fdl_1){
     
    194224    }
    195225
     226    {
     227        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X4_srcS3Fdl_1._X3f10Pi_1) /* ?{} */);
     228    }
     229
     230    {
     231        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X4_srcS3Fdl_1._X3f11Pi_1) /* ?{} */);
     232    }
     233
     234    {
     235        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X4_srcS3Fdl_1._X3f12Pi_1) /* ?{} */);
     236    }
     237
     238    {
     239        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X4_srcS3Fdl_1._X3f13Pi_1) /* ?{} */);
     240    }
     241
     242    {
     243        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1=_X4_srcS3Fdl_1._X3f14Pi_1) /* ?{} */);
     244    }
     245
    196246}
    197247static inline void _X11_destructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1){
     248    {
     249        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ^?{} */);
     250    }
     251
     252    {
     253        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ^?{} */);
     254    }
     255
     256    {
     257        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ^?{} */);
     258    }
     259
     260    {
     261        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ^?{} */);
     262    }
     263
     264    {
     265        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ^?{} */);
     266    }
     267
    198268    {
    199269        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ^?{} */);
     
    272342
    273343    {
     344        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X4_srcS3Fdl_1._X3f10Pi_1));
     345    }
     346
     347    {
     348        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X4_srcS3Fdl_1._X3f11Pi_1));
     349    }
     350
     351    {
     352        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X4_srcS3Fdl_1._X3f12Pi_1));
     353    }
     354
     355    {
     356        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X4_srcS3Fdl_1._X3f13Pi_1));
     357    }
     358
     359    {
     360        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1=_X4_srcS3Fdl_1._X3f14Pi_1));
     361    }
     362
     363    {
    274364        ((void)_X12_constructorFv_S3FdlS3Fdl_autogen___1((&_X4_retS3Fdl_1), (*_X4_dstS3Fdl_1)));
    275365    }
     
    314404    }
    315405
     406    {
     407        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     408    }
     409
     410    {
     411        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     412    }
     413
     414    {
     415        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     416    }
     417
     418    {
     419        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     420    }
     421
     422    {
     423        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     424    }
     425
    316426}
    317427static inline void _X12_constructorFv_S3Fdlii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1){
     
    352462    }
    353463
     464    {
     465        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     466    }
     467
     468    {
     469        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     470    }
     471
     472    {
     473        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     474    }
     475
     476    {
     477        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     478    }
     479
     480    {
     481        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     482    }
     483
    354484}
    355485static inline void _X12_constructorFv_S3Fdliii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1){
     
    390520    }
    391521
     522    {
     523        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     524    }
     525
     526    {
     527        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     528    }
     529
     530    {
     531        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     532    }
     533
     534    {
     535        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     536    }
     537
     538    {
     539        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     540    }
     541
    392542}
    393543static inline void _X12_constructorFv_S3Fdliiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1){
     
    428578    }
    429579
     580    {
     581        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     582    }
     583
     584    {
     585        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     586    }
     587
     588    {
     589        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     590    }
     591
     592    {
     593        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     594    }
     595
     596    {
     597        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     598    }
     599
    430600}
    431601static inline void _X12_constructorFv_S3Fdliiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1){
     
    466636    }
    467637
     638    {
     639        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     640    }
     641
     642    {
     643        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     644    }
     645
     646    {
     647        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     648    }
     649
     650    {
     651        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     652    }
     653
     654    {
     655        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     656    }
     657
    468658}
    469659static inline void _X12_constructorFv_S3Fdliiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1){
     
    504694    }
    505695
     696    {
     697        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     698    }
     699
     700    {
     701        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     702    }
     703
     704    {
     705        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     706    }
     707
     708    {
     709        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     710    }
     711
     712    {
     713        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     714    }
     715
    506716}
    507717static inline void _X12_constructorFv_S3Fdliiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1){
     
    542752    }
    543753
     754    {
     755        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     756    }
     757
     758    {
     759        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     760    }
     761
     762    {
     763        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     764    }
     765
     766    {
     767        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     768    }
     769
     770    {
     771        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     772    }
     773
    544774}
    545775static inline void _X12_constructorFv_S3Fdliiiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1){
     
    580810    }
    581811
    582 }
    583 static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused,unused)) signed int *_X2f9Pi_1){
     812    {
     813        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     814    }
     815
     816    {
     817        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     818    }
     819
     820    {
     821        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     822    }
     823
     824    {
     825        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     826    }
     827
     828    {
     829        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     830    }
     831
     832}
     833static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1){
    584834    {
    585835        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     
    616866    {
    617867        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     868    }
     869
     870    {
     871        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1) /* ?{} */);
     872    }
     873
     874    {
     875        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     876    }
     877
     878    {
     879        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     880    }
     881
     882    {
     883        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     884    }
     885
     886    {
     887        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     888    }
     889
     890}
     891static inline void _X12_constructorFv_S3FdliiiiiiiiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1){
     892    {
     893        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     894    }
     895
     896    {
     897        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     898    }
     899
     900    {
     901        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     902    }
     903
     904    {
     905        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     906    }
     907
     908    {
     909        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     910    }
     911
     912    {
     913        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     914    }
     915
     916    {
     917        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     918    }
     919
     920    {
     921        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     922    }
     923
     924    {
     925        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     926    }
     927
     928    {
     929        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     930    }
     931
     932    {
     933        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1) /* ?{} */);
     934    }
     935
     936    {
     937        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     938    }
     939
     940    {
     941        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     942    }
     943
     944    {
     945        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     946    }
     947
     948}
     949static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1){
     950    {
     951        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     952    }
     953
     954    {
     955        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     956    }
     957
     958    {
     959        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     960    }
     961
     962    {
     963        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     964    }
     965
     966    {
     967        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     968    }
     969
     970    {
     971        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     972    }
     973
     974    {
     975        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     976    }
     977
     978    {
     979        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     980    }
     981
     982    {
     983        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     984    }
     985
     986    {
     987        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     988    }
     989
     990    {
     991        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     992    }
     993
     994    {
     995        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1) /* ?{} */);
     996    }
     997
     998    {
     999        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     1000    }
     1001
     1002    {
     1003        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     1004    }
     1005
     1006}
     1007static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1){
     1008    {
     1009        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     1010    }
     1011
     1012    {
     1013        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     1014    }
     1015
     1016    {
     1017        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     1018    }
     1019
     1020    {
     1021        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     1022    }
     1023
     1024    {
     1025        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     1026    }
     1027
     1028    {
     1029        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     1030    }
     1031
     1032    {
     1033        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     1034    }
     1035
     1036    {
     1037        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     1038    }
     1039
     1040    {
     1041        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     1042    }
     1043
     1044    {
     1045        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     1046    }
     1047
     1048    {
     1049        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     1050    }
     1051
     1052    {
     1053        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X3f12Pi_1) /* ?{} */);
     1054    }
     1055
     1056    {
     1057        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1) /* ?{} */);
     1058    }
     1059
     1060    {
     1061        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     1062    }
     1063
     1064}
     1065static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1){
     1066    {
     1067        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     1068    }
     1069
     1070    {
     1071        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     1072    }
     1073
     1074    {
     1075        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     1076    }
     1077
     1078    {
     1079        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     1080    }
     1081
     1082    {
     1083        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     1084    }
     1085
     1086    {
     1087        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     1088    }
     1089
     1090    {
     1091        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     1092    }
     1093
     1094    {
     1095        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     1096    }
     1097
     1098    {
     1099        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     1100    }
     1101
     1102    {
     1103        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     1104    }
     1105
     1106    {
     1107        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     1108    }
     1109
     1110    {
     1111        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X3f12Pi_1) /* ?{} */);
     1112    }
     1113
     1114    {
     1115        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X3f13Pi_1) /* ?{} */);
     1116    }
     1117
     1118    {
     1119        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1) /* ?{} */);
     1120    }
     1121
     1122}
     1123static inline void _X12_constructorFv_S3FdliiiiiiiiPiPiPiPiPiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused)) signed int *_X2f9Pi_1, __attribute__ ((unused)) signed int *_X3f10Pi_1, __attribute__ ((unused,unused)) signed int *_X3f11Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f12Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f13Pi_1, __attribute__ ((unused,unused,unused)) signed int *_X3f14Pi_1){
     1124    {
     1125        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
     1126    }
     1127
     1128    {
     1129        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
     1130    }
     1131
     1132    {
     1133        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
     1134    }
     1135
     1136    {
     1137        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
     1138    }
     1139
     1140    {
     1141        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
     1142    }
     1143
     1144    {
     1145        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
     1146    }
     1147
     1148    {
     1149        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
     1150    }
     1151
     1152    {
     1153        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
     1154    }
     1155
     1156    {
     1157        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
     1158    }
     1159
     1160    {
     1161        ((void)((*_X4_dstS3Fdl_1)._X3f10Pi_1=_X3f10Pi_1) /* ?{} */);
     1162    }
     1163
     1164    {
     1165        ((void)((*_X4_dstS3Fdl_1)._X3f11Pi_1=_X3f11Pi_1) /* ?{} */);
     1166    }
     1167
     1168    {
     1169        ((void)((*_X4_dstS3Fdl_1)._X3f12Pi_1=_X3f12Pi_1) /* ?{} */);
     1170    }
     1171
     1172    {
     1173        ((void)((*_X4_dstS3Fdl_1)._X3f13Pi_1=_X3f13Pi_1) /* ?{} */);
     1174    }
     1175
     1176    {
     1177        ((void)((*_X4_dstS3Fdl_1)._X3f14Pi_1=_X3f14Pi_1) /* ?{} */);
    6181178    }
    6191179
     
    6281188__attribute__ ((used,used,used,used)) const signed int (*_X3vd7Fi___1)();
    6291189__attribute__ ((used,used,unused,used,used)) const signed int (*_X3vd8Fi___1)();
     1190__attribute__ ((used,used,used,used)) const signed int (*_X3vd9Fi___1)();
     1191__attribute__ ((used,used,unused,used,used)) const signed int (*_X4vd10Fi___1)();
    6301192__attribute__ ((unused,used)) signed int _X2f1Fi___1();
    6311193__attribute__ ((unused)) signed int _X2f1Fi___1(){
     
    6371199}
    6381200__attribute__ ((unused,used,unused)) signed int (*_X2f3FPA0i_i__1(signed int __anonymous_object0))[];
    639 __attribute__ ((unused,unused)) signed int (*_X2f3FPA0i_i__1(signed int _X1pi_1))[]{
    640     __attribute__ ((unused)) signed int (*_X10_retval_f3PA0i_1)[];
    641 }
    642 __attribute__ ((unused,used,unused)) signed int (*_X2f4FFi_i____1())(signed int __anonymous_object1);
    643 __attribute__ ((unused,unused)) signed int (*_X2f4FFi_i____1())(__attribute__ ((unused)) signed int __anonymous_object2){
    644     __attribute__ ((unused)) signed int (*_X10_retval_f4Fi_i__1)(signed int __anonymous_object3);
     1201__attribute__ ((unused,used,unused,unused)) signed int (*_X2f4FPA0i_i__1(signed int __anonymous_object1))[];
     1202__attribute__ ((unused,unused)) signed int (*_X2f5FPA0i_i__1(signed int _X1pi_1))[]{
     1203    __attribute__ ((unused)) signed int (*_X10_retval_f5PA0i_1)[];
     1204}
     1205__attribute__ ((unused,unused)) signed int (*_X2f6FPA0i_i__1(signed int _X1pi_1))[]{
     1206    __attribute__ ((unused)) signed int (*_X10_retval_f6PA0i_1)[];
     1207}
     1208__attribute__ ((unused,used,unused)) signed int (*_X2f7FFi_i____1())(signed int __anonymous_object2);
     1209__attribute__ ((unused,unused)) signed int (*_X2f8FFi_i____1())(__attribute__ ((unused)) signed int __anonymous_object3){
     1210    __attribute__ ((unused)) signed int (*_X10_retval_f8Fi_i__1)(signed int __anonymous_object4);
     1211}
     1212__attribute__ ((unused,unused)) signed int (*_X2f9FFi_i____1())(__attribute__ ((unused)) signed int __anonymous_object5){
     1213    __attribute__ ((unused)) signed int (*_X10_retval_f9Fi_i__1)(signed int __anonymous_object6);
     1214}
     1215__attribute__ ((unused,unused)) signed int (*_X3f10FFi_i____1())(__attribute__ ((unused)) signed int __anonymous_object7){
     1216    __attribute__ ((unused)) signed int (*_X11_retval_f10Fi_i__1)(signed int __anonymous_object8);
    6451217}
    6461218signed int _X3vtrFi___1(){
     
    6501222    __attribute__ ((unused,unused,unused)) signed int _X2t3A0i_2[((unsigned int )5)];
    6511223    __attribute__ ((unused,unused,unused,unused,unused)) signed int **_X2t4A0PPi_2[((unsigned int )5)];
    652     __attribute__ ((unused,unused,unused)) signed int _X2t5Fi___2();
     1224    __attribute__ ((unused,unused,unused,unused,unused,unused)) signed int **_X2t5A0PPi_2[((unsigned int )5)];
     1225    __attribute__ ((unused,unused,unused)) signed int _X2t6Fi___2();
    6531226    __attribute__ ((unused,unused,unused,unused)) signed int *_X2t6FPi___2();
    6541227}
     
    6721245signed int _X4tpr2Fi_PPi__1(__attribute__ ((unused,unused,unused,unused,unused,unused)) signed int **_X3FooPPi_1);
    6731246signed int _X4tpr3Fi_Pi__1(__attribute__ ((unused,unused,unused)) signed int *_X3FooPi_1);
    674 signed int _X4tpr4Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object4)(__attribute__ ((unused,unused)) signed int __anonymous_object5[((unsigned int )5)]));
     1247signed int _X4tpr4Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object9)(__attribute__ ((unused,unused)) signed int __anonymous_object10[((unsigned int )5)]));
    6751248signed int _X4tpr5Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*_X3FooFi___1)());
    6761249signed int _X4tpr6Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*_X3FooFi___1)());
    677 signed int _X4tpr7Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object6)(__attribute__ ((unused)) signed int (*__anonymous_object7)(__attribute__ ((unused,unused)) signed int __anonymous_object8)));
     1250signed int _X4tpr7Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object11)(__attribute__ ((unused)) signed int (*__anonymous_object12)(__attribute__ ((unused,unused)) signed int __anonymous_object13)));
    6781251signed int _X2adFi___1(){
    6791252    __attribute__ ((unused)) signed int _X10_retval_adi_1;
     
    7771350
    7781351}
    779 signed int _X4apd1Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object9, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object10);
    780 signed int _X4apd2Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object11, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object12);
    781 signed int _X4apd3Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object13, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object14);
    782 signed int _X4apd4Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object15)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object16)());
    783 signed int _X4apd5Fi_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));
    784 signed int _X4apd6Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object21)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object22)());
    785 signed int _X4apd7Fi_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));
     1352signed int _X4apd1Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object14, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object15);
     1353signed int _X4apd2Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object16, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object17);
     1354signed int _X4apd3Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object18, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object19);
     1355signed int _X4apd4Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object20)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object21)());
     1356signed int _X4apd5Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object22)(__attribute__ ((unused)) signed int __anonymous_object23), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object24)(__attribute__ ((unused)) signed int __anonymous_object25));
     1357signed int _X4apd6Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object26)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object27)());
     1358signed int _X4apd7Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object28)(__attribute__ ((unused)) signed int __anonymous_object29), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object30)(__attribute__ ((unused)) signed int __anonymous_object31));
    7861359struct Vad {
    7871360    __attribute__ ((unused)) signed int :4;
  • tests/concurrent/clib.c

    rf9c3100 r1f55a75  
    22#include <stdlib.h>
    33#include <clib/cfathread.h>
     4#include <bits/defs.hfa>
    45
    56extern "C" {
     
    6162        cfathread_cluster_add_worker( cl, NULL, NULL, NULL );
    6263        cfathread_cluster_add_worker( cl, NULL, NULL, NULL );
     64
     65        cfathread_attr_t attr;
     66        cfathread_attr_init(&attr);
     67        cfathread_attr_setcluster(&attr, cl);
     68
    6369        cfathread_t u;
    64         cfathread_create( &u, NULL, Unparker, NULL );
     70        cfathread_create( &u, &attr, Unparker, NULL );
    6571        {
    6672                cfathread_t t[20];
    6773                for(int i = 0; i < 20; i++) {
    68                         cfathread_create( &t[i], NULL, Worker, NULL );
     74                        cfathread_create( &t[i], &attr, Worker, NULL );
    6975                }
    7076                for(int i = 0; i < 20; i++) {
     
    7480        stop = true;
    7581        cfathread_join(u, NULL);
     82        cfathread_attr_destroy(&attr);
    7683        fflush(stdout);
    7784        _exit(0);
Note: See TracChangeset for help on using the changeset viewer.