1. 06 Mar, 2018 5 commits
  2. 05 Mar, 2018 6 commits
  3. 04 Mar, 2018 2 commits
  4. 03 Mar, 2018 7 commits
  5. 02 Mar, 2018 5 commits
  6. 01 Mar, 2018 4 commits
  7. 28 Feb, 2018 10 commits
  8. 27 Feb, 2018 1 commit
    • David Benjamin's avatar
      Always use adr with __thumb2__. · 8a5d8bc4
      David Benjamin authored
      Thumb2 addresses are a bit a mess, depending on whether a label is
      interpreted as a function pointer value (for use with BX and BLX) or as
      a program counter value (for use with PC-relative addressing). Clang's
      integrated assembler mis-assembles this code. See
      https://crbug.com/124610#c54 for details.
      
      Instead, use the ADR pseudo-instruction which has clear semantics and
      should be supported by every assembler that handles the OpenSSL Thumb2
      code. (In other files, the ADR vs SUB conditionals are based on
      __thumb2__ already. For some reason, this one is based on __APPLE__, I'm
      guessing to deal with an older version of clang assembler.)
      
      It's unclear to me which of clang or binutils is "correct" or if this is
      even a well-defined notion beyond "whatever binutils does". But I will
      note that https://github.com/openssl/openssl/pull/4669
      
       suggests binutils
      has also changed behavior around this before.
      
      Reviewed-by: default avatarAndy Polyakov <appro@openssl.org>
      Reviewed-by: default avatarRich Salz <rsalz@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/5431)
      8a5d8bc4