Permalink
Commits on Feb 21, 2013
  1. Updated notification email. [ci skip]

    This email has filters for all projects so using it instead.
    brixen committed Feb 21, 2013
  2. More CI tags updates.

    brixen committed Feb 21, 2013
  3. Remove race from TCPSocket.new specs.

    The SpecTCPServer does not echo when receiving QUIT so the read
    would block, randomly, of course.
    brixen committed Feb 21, 2013
  4. Updated CI tags for 1.9, 2.0.

    brixen committed Feb 20, 2013
Commits on Feb 20, 2013
  1. Updated MSpec source to b6027016.

    brixen committed Feb 20, 2013
  2. Updated CI tags for 1.8 mode.

    brixen committed Feb 20, 2013
  3. Fixed Proc#arity specs.

    brixen committed Feb 20, 2013
  4. Fixed multi-byte symbol spec.

    brixen committed Feb 20, 2013
Commits on Feb 18, 2013
  1. Cheaper prologue checks for JIT'ed methods

    This makes the common case of nothing happening inside the vm a lot
    cheaper. It shaves a second off the following script (7.5 to 6.5 seconds
    on my machine):
    
    def fib(n)
     if n < 2
       n
     else
       fib(n - 2) + fib(n - 1)
     end
    end
    
    100000.times do
      fib(15)
    end
    dbussink committed Feb 18, 2013
Commits on Feb 17, 2013
  1. Increase default maximum size of normal methods

    This helps in JIT'ing methods where the JIT profile changed because of
    now treating + as a regular method. One example here is String#+ which
    now can be inlined and benefits from larger maximum sizes.
    dbussink committed Feb 17, 2013
  2. Improved version of the write barrier

    In the common case of either setting a non reference value or setting a
    variable on a young object, we don't have to call a method but check
    this inline. This improves performance for these cases where we don't
    need to store an object in the write barrier.
    dbussink committed Feb 17, 2013
  3. Remove fast math instruction specialization

    This actually causes more performance degrations than the advantages it
    has. Float operations suffer most from these changes and rather than
    changing these specialized instructions for floats, we remove them all
    together.
    
    Performance of Fixnum handling doesn't seem to suffer from this change
    and the JIT can optimize the regular send() path just as well as these
    specialized instructions.
    dbussink committed Feb 17, 2013
Commits on Feb 16, 2013
  1. Merge pull request #2161 from jamesotron/symbol-as-rlimit-resources

    Add symbols as resources to Process.(g|s)et_rlimit
    dbussink committed Feb 16, 2013
Commits on Feb 15, 2013
  1. Add symbols as resources to Process.(g|s)et_rlimit

    As of Ruby 1.9 you can pass a symbol as the name of the resource you're
    operating on instead of using the constant form.  For example:
    
        Process.getrlimit(:CORE)
        => [0, 9223372036854775807]
    
    whereas traditionally one would have used:
    
        Process.getrlimit(Process::RLIMIT_CORE)
        => [0, 9223372036854775807]
    
    This commit adds behaviour to Process.get_rlimit and Process.set_rlimit
    to infer and look up a constant name from a resource name supplied as a
    Symbol.
    jamesotron committed Feb 15, 2013
  2. Specs for Ruby 1.9 API changes to Process.(g|s)et_rlimit

    As of Ruby 1.9 `Process.getrlimit` and `Process.setrlimit` can be passed
    a resource name in the form of a Symbol instead of a Process::RLIMIT_*
    constant.
    
    This commit includes specs for both get and set functions to verify the
    correct behaviour of Rubinius' implementation.
    jamesotron committed Feb 15, 2013
  3. Ignore broken pipes writing to stdout, stderr.

    MRI ignores broken pipes in scenarios like the following:
    
      ruby -e '10.times { puts; sleep 0.05 }' | ruby -e 'gets; exit'
    
    This is neither documented nor tested anywhere I can find. Nor is it possible
    to port the exact functionality from the labyrinthine MRI IO C code.
    brixen committed Feb 15, 2013
Commits on Feb 14, 2013
  1. Allow JIT primitive stubs to handle a CallFrame

    This makes generating JIT stubs a little bit smarter, so it can also
    create stubs for primitives taking a CallFrame as the last argument.
    dbussink committed Feb 14, 2013
  2. Merge pull request #2160 from ryoqun/proc-method-merge

    Merge Proc::Method into Proc
    brixen committed Feb 14, 2013
  3. Remove passing tags

    ryoqun committed Feb 14, 2013
  4. Merge Proc::Method into Proc

    ryoqun committed Feb 14, 2013