-
-
Notifications
You must be signed in to change notification settings - Fork 925
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* master: (23 commits) Fix build Add tags for new failing specs. do not raise when precision is passed to BigDecimal#round [Truffle] BigDecimal#round do not raise FloatDomainError when precision is used [Truffle] Float#to_s slow compatibility implementation [Truffle] code style [Truffle] Fix rand spec filename. [Truffle] Let InternalMethod visit itself. [Truffle] Remember the Proc for a define_method, as it may access the block declaration frame. [Truffle] Tag new failing specs. [Truffle] Add Method#[] as an alias to #call. [Truffle] Fix style. Squashed 'spec/ruby/' changes from 92311a8..cfdf72f Plug in Push/Pop Frame/Binding instructions into the interpreter Fix buggy updates from previous commit. Add Block variants of push/pop frame/binding instructions More tweaks to interpreter signatures Rename some IRVisitor methods sprintf: test infinite and nan float values [Truffle] fix formating of infinite and nan floats ...
- 9.4.12.0
- 9.4.11.0
- 9.4.10.0
- 9.4.9.0
- 9.4.8.0
- 9.4.7.0
- 9.4.6.0
- 9.4.5.0
- 9.4.4.0
- 9.4.3.0
- 9.4.2.0
- 9.4.1.0
- 9.4.0.0
- 9.3.15.0
- 9.3.14.0
- 9.3.13.0
- 9.3.12.0
- 9.3.11.0
- 9.3.10.0
- 9.3.9.0
- 9.3.8.0
- 9.3.7.0
- 9.3.6.0
- 9.3.5.0
- 9.3.4.0
- 9.3.3.0
- 9.3.2.0
- 9.3.1.0
- 9.3.0.0
- 9.2.21.0
- 9.2.20.1
- 9.2.20.0
- 9.2.19.0
- 9.2.18.0
- 9.2.17.0
- 9.2.16.0
- 9.2.15.0
- 9.2.14.0
- 9.2.13.0
- 9.2.12.0
- 9.2.11.1
- 9.2.11.0
- 9.2.10.0
- 9.2.9.0
- 9.2.8.0
- 9.2.7.0
- 9.2.6.0
- 9.2.5.0
- 9.2.4.1
- 9.2.4.0
- 9.2.3.0
- 9.2.2.0
- 9.2.1.0
- 9.2.0.0
- 9.1.17.0
- 9.1.16.0
- 9.1.15.0
- 9.1.14.0
- 9.1.13.0
- 9.1.12.0
- 9.1.11.0
- 9.1.10.0
- 9.1.9.0
- 9.1.8.0
- 9.1.7.0
- 9.1.6.0
- 9.1.5.0
- 9.1.4.0
- 9.1.3.0
- 9.1.2.0
- 9.1.1.0
- 9.1.0.0
Showing
165 changed files
with
1,307 additions
and
579 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
39 changes: 39 additions & 0 deletions
39
core/src/main/java/org/jruby/ir/instructions/PopBlockFrameInstr.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
package org.jruby.ir.instructions; | ||
|
||
import org.jruby.ir.IRVisitor; | ||
import org.jruby.ir.Operation; | ||
import org.jruby.ir.operands.Operand; | ||
import org.jruby.ir.persistence.IRReaderDecoder; | ||
import org.jruby.ir.persistence.IRWriterEncoder; | ||
import org.jruby.ir.transformations.inlining.CloneInfo; | ||
import org.jruby.ir.transformations.inlining.SimpleCloneInfo; | ||
|
||
public class PopBlockFrameInstr extends OneOperandInstr implements FixedArityInstr { | ||
public PopBlockFrameInstr(Operand frame) { | ||
super(Operation.POP_BLOCK_FRAME, frame); | ||
} | ||
|
||
public Operand getFrame() { | ||
return getOperand1(); | ||
} | ||
|
||
@Override | ||
public Instr clone(CloneInfo ii) { | ||
return ii instanceof SimpleCloneInfo ? this : NopInstr.NOP; // FIXME: Is this correct | ||
} | ||
|
||
@Override | ||
public void encode(IRWriterEncoder e) { | ||
super.encode(e); | ||
e.encode(getFrame()); | ||
} | ||
|
||
public static PopBlockFrameInstr decode(IRReaderDecoder d) { | ||
return new PopBlockFrameInstr(d.decodeOperand()); | ||
} | ||
|
||
@Override | ||
public void visit(IRVisitor visitor) { | ||
visitor.PopBlockFrameInstr(this); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
28 changes: 28 additions & 0 deletions
28
core/src/main/java/org/jruby/ir/instructions/PushBlockBindingInstr.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
package org.jruby.ir.instructions; | ||
|
||
import org.jruby.ir.IRVisitor; | ||
import org.jruby.ir.Operation; | ||
import org.jruby.ir.operands.Operand; | ||
import org.jruby.ir.persistence.IRWriterEncoder; | ||
import org.jruby.ir.persistence.IRReaderDecoder; | ||
import org.jruby.ir.transformations.inlining.CloneInfo; | ||
|
||
public class PushBlockBindingInstr extends NoOperandInstr implements FixedArityInstr { | ||
public PushBlockBindingInstr() { | ||
super(Operation.PUSH_BLOCK_BINDING); | ||
} | ||
|
||
@Override | ||
public Instr clone(CloneInfo ii) { | ||
return this; // FIXME: This has to be wrong if pop_binding is conditionally noop'ing on inline | ||
} | ||
|
||
public static PushBlockBindingInstr decode(IRReaderDecoder d) { | ||
return new PushBlockBindingInstr(); | ||
} | ||
|
||
@Override | ||
public void visit(IRVisitor visitor) { | ||
visitor.PushBlockBindingInstr(this); | ||
} | ||
} |
43 changes: 43 additions & 0 deletions
43
core/src/main/java/org/jruby/ir/instructions/PushBlockFrameInstr.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
package org.jruby.ir.instructions; | ||
|
||
import org.jruby.ir.IRVisitor; | ||
import org.jruby.ir.Operation; | ||
import org.jruby.ir.operands.Operand; | ||
import org.jruby.ir.operands.Variable; | ||
import org.jruby.ir.persistence.IRReaderDecoder; | ||
import org.jruby.ir.persistence.IRWriterEncoder; | ||
import org.jruby.ir.transformations.inlining.CloneInfo; | ||
import org.jruby.ir.transformations.inlining.SimpleCloneInfo; | ||
|
||
public class PushBlockFrameInstr extends NoOperandResultBaseInstr implements FixedArityInstr { | ||
private final String frameName; | ||
|
||
public PushBlockFrameInstr(Variable result, String frameName) { | ||
super(Operation.PUSH_BLOCK_FRAME, result); | ||
this.frameName = frameName; | ||
} | ||
|
||
public String getFrameName() { | ||
return frameName; | ||
} | ||
|
||
@Override | ||
public Instr clone(CloneInfo ii) { | ||
return ii instanceof SimpleCloneInfo ? this : NopInstr.NOP; // FIXME: Is this correct? | ||
} | ||
|
||
public static PushBlockFrameInstr decode(IRReaderDecoder d) { | ||
return new PushBlockFrameInstr(d.decodeVariable(), d.decodeString()); | ||
} | ||
|
||
@Override | ||
public void encode(IRWriterEncoder e) { | ||
super.encode(e); | ||
e.encode(getFrameName()); | ||
} | ||
|
||
@Override | ||
public void visit(IRVisitor visitor) { | ||
visitor.PushBlockFrameInstr(this); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.