FreeCalypso > hg > gsm-codec-lib
annotate libgsmefr/tls_flags.c @ 586:b21ea4ab586d
libgsmhr1: update for TW-TS-002 version 1.2.0
The component of libgsmhr1 being changed is RTP input functions;
the change is accepting FT=1 (invalid SID) frames both with and
without payload data bits.
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Mon, 10 Mar 2025 02:03:31 +0000 |
| parents | 38326102fc43 |
| children |
| rev | line source |
|---|---|
|
38
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 * Unfortunately the code we got from ETSI makes heavy use of two global |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 * Boolean flags named Carry and Overflow that function like equally named |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 * processor state flags on many CPU architectures. They are not part |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 * of persistent codec session state for either the encoder or the decoder, |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 * instead they are "short-term" globals much like UNIX errno. |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 * |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 * Given this unfortunate reality plus the natural desire to make our |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 * EFR library thread-safe (a transcoding MGW handling a large volume of |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 * simultaneous calls is exactly the kind of application that would benefit |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 * from utilitizing all CPU cores), our current workaround is to use |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 * thread-local storage. |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 */ |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 #include <stdint.h> |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 #include "typedef.h" |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 |
|
38326102fc43
libgsmefr: beginning to integrate code from ETSI
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 __thread Flag EFR__Carry, EFR__Overflow; |
