Class: Ragweed::Wraposx::ThreadContext::Float64
- Includes:
- FFIStructInclude
- Defined in:
- lib/ragweed/wraposx/thread_context.rb
Overview
_STRUCT_X86_FLOAT_STATE64 { int fpu_reserved; _STRUCT_FP_CONTROL fpu_fcw; /* x87 FPU control word / _STRUCT_FP_STATUS fpu_fsw; / x87 FPU status word / __uint8_t fpu_ftw; / x87 FPU tag word / __uint8_t fpu_rsrv1; / reserved / __uint16_t fpu_fop; / x87 FPU Opcode / / x87 FPU Instruction Pointer / __uint32_t fpu_ip; / offset / __uint16_t fpu_cs; / Selector / __uint16_t fpu_rsrv2; / reserved / / x87 FPU Instruction Operand(Data) Pointer / __uint32_t fpu_dp; / offset / __uint16_t fpu_ds; / Selector / __uint16_t fpu_rsrv3; / reserved / __uint32_t fpu_mxcsr; / MXCSR Register state / __uint32_t fpu_mxcsrmask; / MXCSR mask / _STRUCT_MMST_REG fpu_stmm0; / ST0/MM0 / _STRUCT_MMST_REG fpu_stmm1; / ST1/MM1 / _STRUCT_MMST_REG fpu_stmm2; / ST2/MM2 / _STRUCT_MMST_REG fpu_stmm3; / ST3/MM3 / _STRUCT_MMST_REG fpu_stmm4; / ST4/MM4 / _STRUCT_MMST_REG fpu_stmm5; / ST5/MM5 / _STRUCT_MMST_REG fpu_stmm6; / ST6/MM6 / _STRUCT_MMST_REG fpu_stmm7; / ST7/MM7 / _STRUCT_XMM_REG fpu_xmm0; / XMM 0 / _STRUCT_XMM_REG fpu_xmm1; / XMM 1 / _STRUCT_XMM_REG fpu_xmm2; / XMM 2 / _STRUCT_XMM_REG fpu_xmm3; / XMM 3 / _STRUCT_XMM_REG fpu_xmm4; / XMM 4 / _STRUCT_XMM_REG fpu_xmm5; / XMM 5 / _STRUCT_XMM_REG fpu_xmm6; / XMM 6 / _STRUCT_XMM_REG fpu_xmm7; / XMM 7 / _STRUCT_XMM_REG fpu_xmm8; / XMM 8 / _STRUCT_XMM_REG fpu_xmm9; / XMM 9 / _STRUCT_XMM_REG fpu_xmm10; / XMM 10 / _STRUCT_XMM_REG fpu_xmm11; / XMM 11 / _STRUCT_XMM_REG fpu_xmm12; / XMM 12 / _STRUCT_XMM_REG fpu_xmm13; / XMM 13 / _STRUCT_XMM_REG fpu_xmm14; / XMM 14 / _STRUCT_XMM_REG fpu_xmm15; / XMM 15 / char fpu_rsrv4; / reserved */ int fpu_reserved1; };
Constant Summary collapse
- FLAVOR =
5
Instance Method Summary collapse
Methods included from FFIStructInclude
#method_missing, #methods, #respond_to?
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Ragweed::FFIStructInclude
Instance Method Details
#dump(&block) ⇒ Object
863 864 865 866 867 868 869 870 871 872 873 874 |
# File 'lib/ragweed/wraposx/thread_context.rb', line 863 def dump(&block) maybe_hex = lambda {|a| begin; "\n" + (" " * 9) + block.call(a, 16).hexdump(true)[10..-2]; rescue; ""; end } maybe_dis = lambda {|a| begin; "\n" + block.call(a, 16).distorm.map {|i| " " + i.mnem}.join("\n"); rescue; ""; end } string =" -----------------------------------------------------------------------\n CONTEXT:\n trapno: \#{self.trapno.to_s(16).rjust(8, \"0\")} \#{maybe_hex.call(self.trapno)}\n err: \#{self.err.to_s(16).rjust(8, \"0\")} \#{maybe_hex.call(self.err)}\n faultvaddr: \#{self.faultvaddr.to_s(16).rjust(16, \"0\")} \#{maybe_hex.call(self.faultvaddr)}\n" end |