Skip to content
  • Jimmy Miller's avatar
    467992ee
    Implement optimize send in yjit (#6488) · 467992ee
    Jimmy Miller authored
    
    
    * Implement optimize send in yjit
    
    This successfully makes all our benchmarks exit way less for optimize send reasons.
    It makes some benchmarks faster, but not by as much as I'd like. I think this implementation
    works, but there are definitely more optimial arrangements. For example, what if we compiled
    send to a jump table? That seems like perhaps the most optimal we could do, but not obvious (to me)
    how to implement give our current setup.
    
    Co-authored-by: default avatarAlan Wu <XrXr@users.noreply.github.com>
    
    * Attempt at fixing the issues raised by @XrXr
    
    * fix allowlist
    
    * returns 0 instead of nil when not found
    
    * remove comment about encoding exception
    
    * Fix up c changes
    
    * Update assert
    
    Co-authored-by: default avatarAlan Wu <XrXr@users.noreply.github.com>
    
    * get rid of unneeded code and fix the flags
    
    * Apply suggestions from code review
    
    Co-authored-by: default avatarAlan Wu <XrXr@users.noreply.github.com>
    
    * rename and fix typo
    
    Co-authored-by: default avatarAlan Wu <XrXr@users.noreply.github.com>
    467992ee
    Implement optimize send in yjit (#6488)
    Jimmy Miller authored
    
    
    * Implement optimize send in yjit
    
    This successfully makes all our benchmarks exit way less for optimize send reasons.
    It makes some benchmarks faster, but not by as much as I'd like. I think this implementation
    works, but there are definitely more optimial arrangements. For example, what if we compiled
    send to a jump table? That seems like perhaps the most optimal we could do, but not obvious (to me)
    how to implement give our current setup.
    
    Co-authored-by: default avatarAlan Wu <XrXr@users.noreply.github.com>
    
    * Attempt at fixing the issues raised by @XrXr
    
    * fix allowlist
    
    * returns 0 instead of nil when not found
    
    * remove comment about encoding exception
    
    * Fix up c changes
    
    * Update assert
    
    Co-authored-by: default avatarAlan Wu <XrXr@users.noreply.github.com>
    
    * get rid of unneeded code and fix the flags
    
    * Apply suggestions from code review
    
    Co-authored-by: default avatarAlan Wu <XrXr@users.noreply.github.com>
    
    * rename and fix typo
    
    Co-authored-by: default avatarAlan Wu <XrXr@users.noreply.github.com>
Loading