Changeset dddb3dd0 for libcfa/src/concurrency/io/types.hfa
- Timestamp:
- Mar 2, 2021, 1:58:12 PM (2 years ago)
- Branches:
- arm-eh, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- 2cd784a
- Parents:
- 6047b00
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/io/types.hfa
r6047b00 rdddb3dd0 38 38 volatile __u32 * head; // one passed last index consumed by the kernel 39 39 volatile __u32 * tail; // one passed last index visible to the kernel 40 volatile __u32 ready; // one passed last index added to array ()41 40 volatile __u32 released; // one passed last index released back to the free list 42 41 … … 97 96 98 97 struct __attribute__((aligned(128))) $io_context { 99 inline Seqable; 100 101 volatile bool revoked; 98 $io_arbiter * arbiter; 102 99 processor * proc; 103 104 $io_arbiter * arbiter;105 100 106 101 struct { … … 113 108 __u32 ring_flags; 114 109 int fd; 115 int efd;116 117 single_sem sem;118 $thread self;119 110 }; 120 121 void main( $io_context & this );122 static inline $thread * get_thread ( $io_context & this ) __attribute__((const)) { return &this.self; }123 static inline $monitor * get_monitor( $io_context & this ) __attribute__((const)) { return &this.self.self_mon; }124 static inline $io_context *& Back( $io_context * n ) { return ($io_context *)Back( (Seqable *)n ); }125 static inline $io_context *& Next( $io_context * n ) { return ($io_context *)Next( (Colable *)n ); }126 void ^?{}( $io_context & mutex this );127 111 128 112 monitor __attribute__((aligned(128))) $io_arbiter { … … 132 116 volatile bool flag; 133 117 } pending; 134 135 Sequence($io_context) assigned;136 137 Sequence($io_context) available;138 118 }; 139 119 … … 167 147 #endif 168 148 169 void __ioctx_prepare_block($io_context & ctx);149 // void __ioctx_prepare_block($io_context & ctx); 170 150 #endif 171 151
Note: See TracChangeset
for help on using the changeset viewer.