Use const qualifier for mqc_states 984/head
authorStefan Weil <sw@weilnetz.de>
Mon, 14 Aug 2017 12:36:06 +0000 (14:36 +0200)
committerStefan Weil <sw@weilnetz.de>
Mon, 14 Aug 2017 12:41:27 +0000 (14:41 +0200)
This allows more compiler optimizations.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
src/lib/openjp2/mqc.c
src/lib/openjp2/mqc.h
src/lib/openjp2/mqc_inl.h

index 8f69e29e39ddb53cdf190b9dede98a5fe9bfc3af..6299b171d8788ffb32bd13c36027eb3f10b6983a 100644 (file)
@@ -79,7 +79,7 @@ static void opj_mqc_setbits(opj_mqc_t *mqc);
 /* <summary> */
 /* This array defines all the possible states for a context. */
 /* </summary> */
-static opj_mqc_state_t mqc_states[47 * 2] = {
+static const opj_mqc_state_t mqc_states[47 * 2] = {
     {0x5601, 0, &mqc_states[2], &mqc_states[3]},
     {0x5601, 1, &mqc_states[3], &mqc_states[2]},
     {0x3401, 0, &mqc_states[4], &mqc_states[12]},
index ac3aff108e3569d2894b7e607e4f036497bcd86d..69a2a79dc06d68b1a973e9aac915d13c6b0f566f 100644 (file)
@@ -61,9 +61,9 @@ typedef struct opj_mqc_state {
     /** the Most Probable Symbol (0 or 1) */
     OPJ_UINT32 mps;
     /** next state if the next encoded symbol is the MPS */
-    struct opj_mqc_state *nmps;
+    const struct opj_mqc_state *nmps;
     /** next state if the next encoded symbol is the LPS */
-    struct opj_mqc_state *nlps;
+    const struct opj_mqc_state *nlps;
 } opj_mqc_state_t;
 
 #define MQC_NUMCTXS 19
@@ -87,9 +87,9 @@ typedef struct opj_mqc {
     /** pointer to the end of the buffer */
     OPJ_BYTE *end;
     /** Array of contexts */
-    opj_mqc_state_t *ctxs[MQC_NUMCTXS];
+    const opj_mqc_state_t *ctxs[MQC_NUMCTXS];
     /** Active context */
-    opj_mqc_state_t **curctx;
+    const opj_mqc_state_t **curctx;
     /* lut_ctxno_zc shifted by (1 << 9) * bandno */
     const OPJ_BYTE* lut_ctxno_zc_orient;
     /** Original value of the 2 bytes at end[0] and end[1] */
index d95d9492ae0e487c671c44be0665fd239d245d1c..310a3287fd918dce3ab66e49e9f4e2706ccfa2de 100644 (file)
@@ -157,7 +157,7 @@ static INLINE OPJ_UINT32 opj_mqc_raw_decode(opj_mqc_t *mqc)
 }
 
 #define DOWNLOAD_MQC_VARIABLES(mqc, curctx, c, a, ct) \
-        register opj_mqc_state_t **curctx = mqc->curctx; \
+        register const opj_mqc_state_t **curctx = mqc->curctx; \
         register OPJ_UINT32 c = mqc->c; \
         register OPJ_UINT32 a = mqc->a; \
         register OPJ_UINT32 ct = mqc->ct