Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Oct 15, 2011
  1. @hungc
  2. @hungc
Commits on Oct 14, 2011
  1. @hungc
  2. @hungc
  3. @bjorng @hungc
Commits on Oct 13, 2011
  1. @bjorng
  2. @bjorng

    make_preload: Don't output a C comment start inside a comment

    bjorng authored
    We already avoid outputting a comment terminator ("*/") inside
    a comment to avoid causing a syntax error. Also avoid outputting
    the start of a comment ("/*") to avoid causing a compiler warning.
    
    Noticed-by: Tuncer Ayaz
  3. Merge branch 'hb/stdlib/dets_repair/OTP-9622'

    Hans Bolinder authored
    * hb/stdlib/dets_repair/OTP-9622:
      Fix a minor bug in Dets
  4. @IngelaAndin

    Merge branch 'ia/ssl-peername-one-should-not-be-removed'

    IngelaAndin authored
    * ia/ssl-peername-one-should-not-be-removed:
      Put back ssl:peercert/1
Commits on Oct 12, 2011
  1. @bjorng

    Merge branch 'bjorn/erts/beam-loader-fixes'

    bjorng authored
    * bjorn/erts/beam-loader-fixes:
      Print transformtions sorted on the name of the first instruction
      Share code for call of predicate and transformation functions
      Simplify transformations of gc_bif[123] instructions
      Refactor 'too_old_compiler' handling
      Introduce 'try_me_else_fail'
      Combine 'store_var' with 'next_arg'
      Merge 'next_instr' and 'is_op' into 'next_instr'
      Merge 'new_instr' and 'store_op' into 'new_instr'
      Combine a 'call' instruction with the following 'end' instruction
      Remove some unnecessary type constraints in transformations
      Get rid of redundant 'try_me_else' and 'fail' instructions
      Add some more information in instruction comments
      In transformations, don't store variables that are never used
      Remove redundant 'next_arg' before 'next_instr'
      Generalize and rename is_set_var_instr() to is_instr()
      Remove too_old_compiler handling for very old instruction variants
      Remove the special instructions for the hybrid heap emulator
      Remove optimization of 'move R R'
Commits on Oct 11, 2011
  1. @bjorng

    Merge branch 'bjorn/some-configure-clean-ups'

    bjorng authored
    * bjorn/some-configure-clean-ups:
      erts/configure.in: Remove test for reversed setvbuf() arguments
      erts/configure.in: Remove broken support for System V
      erts/configure.in: Don't check for the presence of mach-o/dyld.h
      erts/configure.in: Remove useless --disable-fixalloc option
  2. @bjorng
  3. @bjorng
  4. @bjorng

    Simplify transformations of gc_bif[123] instructions

    bjorng authored
    Each gc_bif[123] instruction must have both a transformation in
    ops.tab and special code in gen_guard_bif[123]().
    
    Rewrite it to do most of the work in gen_guard_bif[123]().
  5. @bjorng

    Refactor 'too_old_compiler' handling

    bjorng authored
    In the handling of generic instructions, we used to always
    test whether the instruction was 'too_old_compiler' and abort
    loading with a special error message.
    
    Refactor the code so that we only do test if we an error
    has occurred. That will allow us to make the test more expensive
    in the future, allowing us to customize error messages for certain
    opcode without any cost in the successful case.
  6. @bjorng

    Introduce 'try_me_else_fail'

    bjorng authored
  7. @bjorng

    Combine 'store_var' with 'next_arg'

    bjorng authored
    'store_var' is always followed by 'next_arg'.
  8. @bjorng

    Merge 'next_instr' and 'is_op' into 'next_instr'

    bjorng authored
    'next_instr' is always followed by 'is_op'.
  9. @bjorng

    Merge 'new_instr' and 'store_op' into 'new_instr'

    bjorng authored
    Since the 'new_instr' instruction always occurs before the
    'store_op' instruction, we can merge the instructions into one.
    Also, there is no need to include the arity of the BEAM
    instruction as an operand, since the arity can be looked up
    based on the opcode.
  10. @bjorng

    Combine a 'call' instruction with the following 'end' instruction

    bjorng authored
    A 'call' instruction in the loader transformation language is
    always followed by an 'end' instruction, so we can replace the
    'call' instruction with a 'call_end' instruction.
  11. @bjorng

    Remove some unnecessary type constraints in transformations

    bjorng authored
    We don't need type constraints that essentially are assertions;
    the wrong type will be detected and loading aborted when no specific
    instruction can be found.
  12. @bjorng

    Get rid of redundant 'try_me_else' and 'fail' instructions

    bjorng authored
    If the left part of a transformation will always match, omit the
    the 'try_me_else' and 'fail' instructions.
    
    As part of this optimization, make it an error to have a
    transformation that can never be reached because of a previous
    transformation that will always match. (Remove one transformation
    from ops.tab that was found to be unreachable.)
  13. @bjorng
  14. @bjorng

    In transformations, don't store variables that are never used

    bjorng authored
    This optimization will save some space (in the loader tables) and
    some loading time.
  15. @bjorng

    Remove redundant 'next_arg' before 'next_instr'

    bjorng authored
    Fix the incorrect code that attempted to remove a single
    'next_arg' instructions before 'next_instr'.
  16. @IngelaAndin

    Put back ssl:peercert/1

    IngelaAndin authored
    I accidentally removed a little too much, only peercert/2 was deprecated.
  17. @bjorng

    Generalize and rename is_set_var_instr() to is_instr()

    bjorng authored
    It is more useful to have a helper function that can test for
    any instruction.
  18. @bjorng

    Remove too_old_compiler handling for very old instruction variants

    bjorng authored
    is_list/2 and other test instructions with a zero label was last
    generated by the v1 BEAM compiler which was last supported in R6B.
    
    Since BEAM modules produced by that compiler will be rejected with
    a nice error message for other reasons (e.g. by the test for the
    module_info/0,1 functions), retaining those transformations serves
    no useful purpose.
  19. @bjorng

    Remove the special instructions for the hybrid heap emulator

    bjorng authored
    The hybrid-heap emulator is broken since R12, so there is no
    need to keep those instructions.
  20. @bjorng

    Remove optimization of 'move R R'

    bjorng authored
    Ancient versions of BEAM compiler could generate move instruction with
    the same source and destination registers, so the loader would optimize
    away such instructions.
Commits on Oct 10, 2011
  1. Merge branch 'hb/kernel/fix_disk_log/OTP-9508'

    Hans Bolinder authored
    * hb/kernel/fix_disk_log/OTP-9508:
      Fix two minor disk_log bugs
  2. Fix a minor bug in Dets

    Hans Bolinder authored
    If a Dets table had been properly closed but the space management data
    could not been read, it was not possible to repair the file.
  3. Merge branch 'anders/diameter/tls_over_tcp/OTP-9605'

    Anders Svensson authored
    * anders/diameter/tls_over_tcp/OTP-9605:
      Move init/end_per_suite into testcases
      Skip tls testsuite if there's no openssl
      Clarify that ssl must be started for TLS support
      Add tls support at connection establishment
      Add tls testsuite
      Documentation updates
      Close transport if tls is requested over sctp
      Handle tls notification for tcp
      Lift recursion in tcp message reception up the call chain
      Add tls support to capabilities exchange
  4. Merge branch 'anders/diameter/testsuite_robustness/OTP-9619'

    Anders Svensson authored
    * anders/diameter/testsuite_robustness/OTP-9619:
      Make testsuites more robust in case of init failure
  5. Merge branch 'anders/diameter/eprotonosupport/OTP-9615'

    Anders Svensson authored
    * anders/diameter/eprotonosupport/OTP-9615:
      gen_sctp:open/0-2 might return {error, eprotonosupport}
Something went wrong with that request. Please try again.