/ Check-in [587109c8]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Silence a compiler warning by using a constant value instead of a constant expression that some compilers mistakenly believe causes bitshift overflow.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | mistake
Files: files | file ages | folders
SHA1: 587109c81a9cf479c0b0036cfe8b27c7858c3c94
User & Date: dan 2010-03-03 08:12:22
Context
2010-03-03
08:18
Fix another instance of the same warning-inducing expression in util.c. Closed-Leaf check-in: 80c64e16 user: dan tags: mistake
08:12
Silence a compiler warning by using a constant value instead of a constant expression that some compilers mistakenly believe causes bitshift overflow. check-in: 587109c8 user: dan tags: mistake
00:02
When TEMP files are in memory, also put the massive TEMP file used by the VACUUM command in memory. This is a cherry-pick merge of [9daf4e7d07] check-in: e5342234 user: drh tags: branch-3.6.22
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/util.c.

741
742
743
744
745
746
747
748

749
750
751
752
753
754
755
...
758
759
760
761
762
763
764
765

766
767
768
769
770
771
772

  p++;
  a = a<<14;
  a |= *p;
  /* a: p2<<28 | p4<<14 | p6 (unmasked) */
  if (!(a&0x80))
  {
    a &= (0x1f<<28)|(0x7f<<14)|(0x7f);

    b &= (0x7f<<14)|(0x7f);
    b = b<<7;
    a |= b;
    s = s>>11;
    *v = ((u64)s)<<32 | a;
    return 7;
  }
................................................................................
  a &= (0x7f<<14)|(0x7f);
  p++;
  b = b<<14;
  b |= *p;
  /* b: p3<<28 | p5<<14 | p7 (unmasked) */
  if (!(b&0x80))
  {
    b &= (0x1f<<28)|(0x7f<<14)|(0x7f);

    /* moved CSE2 up */
    /* a &= (0x7f<<14)|(0x7f); */
    a = a<<7;
    a |= b;
    s = s>>4;
    *v = ((u64)s)<<32 | a;
    return 8;







|
>







 







|
>







741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
...
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774

  p++;
  a = a<<14;
  a |= *p;
  /* a: p2<<28 | p4<<14 | p6 (unmasked) */
  if (!(a&0x80))
  {
    /* assert( ((0xFF<<28)|(0x7f<<14)|(0x7f))==0xf01fc07f ); */
    a &= 0xf01fc07f;
    b &= (0x7f<<14)|(0x7f);
    b = b<<7;
    a |= b;
    s = s>>11;
    *v = ((u64)s)<<32 | a;
    return 7;
  }
................................................................................
  a &= (0x7f<<14)|(0x7f);
  p++;
  b = b<<14;
  b |= *p;
  /* b: p3<<28 | p5<<14 | p7 (unmasked) */
  if (!(b&0x80))
  {
    /* assert( ((0xff<<28)|(0x7f<<14)|(0x7f))==0xf01fc07f ); */
    b &= 0xf01fc07f;
    /* moved CSE2 up */
    /* a &= (0x7f<<14)|(0x7f); */
    a = a<<7;
    a |= b;
    s = s>>4;
    *v = ((u64)s)<<32 | a;
    return 8;