Skip to content
Snippets Groups Projects
Select Git revision
  • 97136d71a78a4b6b816f7e14acc52be426efcb6f
  • main default protected
  • 3.10
  • 3.11
  • revert-15688-bpo-38031-_io-FileIO-opener-crash
  • 3.8
  • 3.9
  • 3.7
  • enum-fix_auto
  • branch-v3.11.0
  • backport-c3648f4-3.11
  • gh-93963/remove-importlib-resources-abcs
  • refactor-wait_for
  • shared-testcase
  • v3.12.0a2
  • v3.12.0a1
  • v3.11.0
  • v3.8.15
  • v3.9.15
  • v3.10.8
  • v3.7.15
  • v3.11.0rc2
  • v3.8.14
  • v3.9.14
  • v3.7.14
  • v3.10.7
  • v3.11.0rc1
  • v3.10.6
  • v3.11.0b5
  • v3.11.0b4
  • v3.10.5
  • v3.11.0b3
  • v3.11.0b2
  • v3.9.13
34 results

cpython

  • Clone with SSH
  • Clone with HTTPS
  • user avatar
    Miss Islington (bot) authored and GitHub committed
    * bpo-40791: Make compare_digest more constant-time.
    
    The existing volatile `left`/`right` pointers guarantee that the reads will all occur, but does not guarantee that they will be _used_. So a compiler can still short-circuit the loop, saving e.g. the overhead of doing the xors and especially the overhead of the data dependency between `result` and the reads. That would change performance depending on where the first unequal byte occurs. This change removes that optimization.
    
    (This is change GH-1 from https://bugs.python.org/issue40791
    
     .)
    (cherry picked from commit 31729366)
    
    Co-authored-by: default avatarDevin Jeanpierre <jeanpierreda@google.com>
    97136d71
    History
    Name Last commit Last update