1. 26 5月, 2023 1 次提交
  2. 12 4月, 2023 2 次提交
  3. 08 3月, 2022 1 次提交
  4. 17 3月, 2020 1 次提交
  5. 27 2月, 2020 1 次提交
  6. 17 2月, 2020 1 次提交
  7. 26 2月, 2019 1 次提交
  8. 18 2月, 2019 2 次提交
    • D
      Check for unpaired .cfi_remember_state · 2e826078
      David Benjamin 提交于
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      GH: #8109
      (cherry picked from commit e09633107b7e987b2179850715ba60d8fb069278)
      2e826078
    • D
      Fix some CFI issues in x86_64 assembly · 2086edb7
      David Benjamin 提交于
      The add/double shortcut in ecp_nistz256-x86_64.pl left one instruction
      point that did not unwind, and the "slow" path in AES_cbc_encrypt was
      not annotated correctly. For the latter, add
      .cfi_{remember,restore}_state support to perlasm.
      
      Next, fill in a bunch of functions that are missing no-op .cfi_startproc
      and .cfi_endproc blocks. libunwind cannot unwind those stack frames
      otherwise.
      
      Finally, work around a bug in libunwind by not encoding rflags. (rflags
      isn't a callee-saved register, so there's not much need to annotate it
      anyway.)
      
      These were found as part of ABI testing work in BoringSSL.
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      GH: #8109
      (cherry picked from commit c0e8e5007ba5234d4d448e82a1567e0c4467e629)
      2086edb7
  9. 11 9月, 2018 1 次提交
  10. 04 7月, 2018 1 次提交
  11. 12 11月, 2017 1 次提交
  12. 05 5月, 2017 1 次提交
  13. 15 2月, 2017 1 次提交
  14. 14 2月, 2017 1 次提交
  15. 11 2月, 2017 2 次提交
  16. 10 2月, 2017 3 次提交
    • A
      perlasm/x86_64-xlate.pl: recognize DWARF CFI directives. · a3b5684f
      Andy Polyakov 提交于
      CFI directives annotate instructions that are significant for stack
      unwinding procedure. In addition to directives recognized by GNU
      assembler this module implements three synthetic ones:
      
      - .cfi_push annotates push instructions in prologue and translates to
        .cfi_adjust_cfa_offset (if needed) and .cfi_offset;
      - .cfi_pop annotates pop instructions in epilogue and translates to
        .cfi_adjust_cfs_offset (if needed) and .cfi_restore;
      - .cfi_cfa_expression encodes DW_CFA_def_cfa_expression and passes it
        to .cfi_escape as byte vector;
      
      CFA expression syntax is made up mix of DWARF operator suffixes [subset
      of] and references to registers with optional bias. Following example
      describes offloaded original stack pointer at specific offset from
      current stack pointer:
      
      	.cfi_cfa_expression	%rsp+40,deref,+8
      
      Final +8 has everything to do with the fact that CFA, Canonical Frame
      Address, is reference to top of caller's stack, and on x86_64 call to
      subroutine pushes 8-byte return address.
      
      Triggered by request from Adam Langley.
      Reviewed-by: NRich Salz <rsalz@openssl.org>
      a3b5684f
    • A
    • A
      e09b6216
  17. 06 2月, 2017 1 次提交
  18. 16 12月, 2016 1 次提交
  19. 12 12月, 2016 1 次提交
    • A
      perlasm/x86_64-xlate.pl: refine sign extension in ea package. · 82e08930
      Andy Polyakov 提交于
      $1<<32>>32 worked fine with either 32- or 64-bit perl for a good while,
      relying on quirk that [pure] 32-bit perl performed it as $1<<0>>0. But
      this apparently changed in some version past minimally required 5.10,
      and operation result became 0. Yet, it went unnoticed for another while,
      because most perl package providers configure their packages with
      -Duse64bitint option.
      Reviewed-by: NRich Salz <rsalz@openssl.org>
      82e08930
  20. 11 10月, 2016 1 次提交
    • D
      Remove trailing whitespace from some files. · 609b0852
      David Benjamin 提交于
      The prevailing style seems to not have trailing whitespace, but a few
      lines do. This is mostly in the perlasm files, but a few C files got
      them after the reformat. This is the result of:
      
        find . -name '*.pl' | xargs sed -E -i '' -e 's/( |'$'\t'')*$//'
        find . -name '*.c' | xargs sed -E -i '' -e 's/( |'$'\t'')*$//'
        find . -name '*.h' | xargs sed -E -i '' -e 's/( |'$'\t'')*$//'
      
      Then bn_prime.h was excluded since this is a generated file.
      
      Note mkerr.pl has some changes in a heredoc for some help output, but
      other lines there lack trailing whitespace too.
      Reviewed-by: NKurt Roeckx <kurt@openssl.org>
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      609b0852
  21. 15 7月, 2016 1 次提交
  22. 25 6月, 2016 1 次提交
  23. 15 6月, 2016 4 次提交
  24. 20 4月, 2016 2 次提交
  25. 07 3月, 2016 1 次提交
  26. 13 2月, 2016 1 次提交
  27. 12 2月, 2016 2 次提交
    • R
      Perl's chop / chomp considered bad, use a regexp instead · 9ba96fbb
      Richard Levitte 提交于
      Once upon a time, there was chop, which somply chopped off the last
      character of $_ or a given variable, and it was used to take off the
      EOL character (\n) of strings.
      
      ... but then, you had to check for the presence of such character.
      
      So came chomp, the better chop which checks for \n before chopping it
      off.  And this worked well, as long as Perl made internally sure that
      all EOLs were converted to \n.
      
      These days, though, there seems to be a mixture of perls, so lines
      from files in the "wrong" environment might have \r\n as EOL, or just
      \r (Mac OS, unless I'm misinformed).
      
      So it's time we went for the more generic variant and use s|\R$||, the
      better chomp which recognises all kinds of known EOLs and chops them
      off.
      
      A few chops were left alone, as they are use as surgical tools to
      remove one last slash or one last comma.
      
      NOTE: \R came with perl 5.10.0.  It means that from now on, our
      scripts will fail with any older version.
      Reviewed-by: NRich Salz <rsalz@openssl.org>
      9ba96fbb
    • A
      perlasm/x86_64-xlate.pl: pass pure constants verbatim. · fd7dc201
      Andy Polyakov 提交于
      RT#3885
      Reviewed-by: NRich Salz <rsalz@openssl.org>
      fd7dc201
  28. 06 2月, 2016 1 次提交
  29. 12 9月, 2014 1 次提交
  30. 10 7月, 2014 1 次提交