REDROOM
PHP 8.2.31
Path:
Logout
Edit File
Size: 1.96 KB
Close
/proc/thread-self/root/opt/alt/ruby33/share/ruby/ruby_vm/rjit/jit_state.rb
Text
Base64
module RubyVM::RJIT class JITState < Struct.new( :iseq, # @param `RubyVM::RJIT::CPointer::Struct_rb_iseq_t` :pc, # @param [Integer] The JIT target PC :cfp, # @param `RubyVM::RJIT::CPointer::Struct_rb_control_frame_t` The JIT source CFP (before RJIT is called) :block, # @param [RubyVM::RJIT::Block] :stack_size_for_pc, # @param [Integer] :side_exit_for_pc, # @param [Hash{ Integer => Integer }] { sp_offset => address } :record_boundary_patch_point, # @param [TrueClass,FalseClass] ) def initialize(side_exit_for_pc: {}, record_boundary_patch_point: false, **) = super def insn Compiler.decode_insn(C.VALUE.new(pc).*) end def operand(index, signed: false, ruby: false) addr = pc + (index + 1) * Fiddle::SIZEOF_VOIDP value = Fiddle::Pointer.new(addr)[0, Fiddle::SIZEOF_VOIDP].unpack(signed ? 'q' : 'Q')[0] if ruby value = C.to_ruby(value) end value end def at_current_insn? pc == cfp.pc.to_i end def peek_at_local(n) local_table_size = iseq.body.local_table_size offset = -C::VM_ENV_DATA_SIZE - local_table_size + n + 1 value = (cfp.ep + offset).* C.to_ruby(value) end def peek_at_stack(depth_from_top) raise 'not at current insn' unless at_current_insn? offset = -(1 + depth_from_top) # rb_rjit_branch_stub_hit updates SP, so you don't need to worry about sp_offset value = (cfp.sp + offset).* C.to_ruby(value) end def peek_at_self C.to_ruby(cfp.self) end def peek_at_block_handler(level) ep = ep_at_level(cfp, level:) ep[C::VM_ENV_DATA_INDEX_SPECVAL] end private def ep_at_level(cfp, level:) ep = cfp.ep level.times do # VM_ENV_PREV_EP ep = C.VALUE.new(ep[C::VM_ENV_DATA_INDEX_SPECVAL] & ~0x03) end ep end end end
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 0 × Files: 17
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
assembler.rb
32.07 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
block.rb
568 B
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
branch_stub.rb
879 B
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
code_block.rb
2.28 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
compiler.rb
16.72 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
context.rb
11.14 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
c_pointer.rb
10.68 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
c_type.rb
2.65 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
entry_stub.rb
226 B
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
exit_compiler.rb
4.83 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
hooks.rb
949 B
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
insn_compiler.rb
202.68 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
instruction.rb
35.58 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
invariants.rb
4.72 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
jit_state.rb
1.96 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
stats.rb
7.40 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
type.rb
5.91 KB
lrw-r--r--
2026-04-07 13:52:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).