Skip to content
Commits on Jun 14, 2013
  1. Remove passing spec tags

    committed Jun 14, 2013
Commits on Jun 13, 2013
  1. @brixen

    Fixed running VM tests on 10.9.

    brixen committed Jun 12, 2013
  2. @brixen
  3. @brixen

    Revert 65279b7.

    brixen committed Jun 12, 2013
    This code is not portable under OS X 10.9 clang 5.0.
  4. @brixen

    Revert 04d8acb

    brixen committed Jun 12, 2013
    This code is not portable under OS X 10.9 clang 5.0.
  5. @brixen
  6. @brixen
  7. @brixen

    Abstract use of tr1 a bit more.

    brixen committed Jun 12, 2013
Commits on Jun 12, 2013
  1. @brixen
  2. @dbussink

    Remove tags for passing specs

    dbussink committed Jun 12, 2013
  3. @dbussink

    Use US-ASCII as the default encoding for Symbol for now

    dbussink committed Jun 12, 2013
    This is not always correct, but much more compatible. For example
    dumping a hash with symbol keys to YAML would break since the string was
    marked as binary encoding. When retrieving it would load the original
    symbol name.
    
    We need to add proper symbol encoding support in the future, but for now
    this is a better hack.
  4. @dbussink

    Fix equality check for having a block

    dbussink committed Jun 12, 2013
    Fixes #2384
  5. @dbussink
  6. @dbussink

    Merge pull request #2385 from ryoqun/encoding-agnostic-compare

    dbussink committed Jun 11, 2013
    String#<=> should first compare byte-wise, then encoding-wise
Commits on Jun 11, 2013
  1. Add missing ENABLE_LLVM guard

    committed Jun 12, 2013
  2. @dbussink

    Merge pull request #2372 from ryoqun/string-comparison-encoding

    dbussink committed Jun 11, 2013
    Make String#<=> encoding-aware
  3. @dbussink

    Better CPU detection

    dbussink committed Jun 11, 2013
    This copies the current CPU detection from LLVM trunk. There is an issue
    with certain i7 CPU's where AVX is not available. One example of this is
    the Linode vm's. There LLVM doesn't detect AVX is not available and
    enables it.
    
    This leads to SIGILL errors because it generates instructions the CPU
    can't handle. This new detection properly handles this case since it has
    additional logic for AVX and solves the issue.
  4. @dbussink

    Fix invalid memory read

    dbussink committed Jun 11, 2013
    This would read free'd data, since the request is already deallocated
    here when the request is finished in sync mode.
  5. @dbussink

    Remove usage of MachineCode::parent

    dbussink committed Jun 11, 2013
    This was trying to keep some form of relationships between machine code
    objects that was used only for JIT deopts. The problem is that is
    absolutely not thread safe and can cause issues with deoptimizations.
    
    This new approach uses the meta information already available in the JIT
    to emil the call frame for the actual creator of the scope, so we can
    use that. That is thread safe and doesn't have the issues of using
    MachineCode::parent.
    
    Fixes #2383
  6. @dbussink
  7. @dbussink

    Fix thread safety issue with modifying constant scope for code

    dbussink committed Jun 11, 2013
    Modifying compiled code objects at runtime results in race conditions if
    the code is executed under different contexts in multiple threads.
    
    This changes it to always use the constant scope from the call frame and
    set this up properly for all the cases. Also the JIT needs to setup
    these frames properly.
    
    Also ensures that the JIT also checks the constant scope when validating
    an inlined constant.
    
    Fixes #2221
Commits on Jun 9, 2013
  1. @dbussink
Commits on Jun 8, 2013
  1. @dbussink
  2. @dbussink
  3. @dbussink

    Merge pull request #2378 from charliesome/invalidate-method-cache-if-…

    dbussink committed Jun 8, 2013
    …included-module-has-constants
    
    Invalidate method cache if included module has constants
  4. @charliesome
Something went wrong with that request. Please try again.