コード例 #1
0
ファイル: StackFrame.cs プロジェクト: baulig/debugger
 Register[] GetRegisters(int[] indices)
 {
     Register[] retval = new Register [indices.Length];
     for (int i = 0; i < indices.Length; i++)
         retval [i] = regs [indices [i]];
     return retval;
 }
コード例 #2
0
ファイル: StackFrame.cs プロジェクト: baulig/debugger
        internal Registers(Architecture arch, long[] values)
        {
            important_indices = arch.RegisterIndices;

            regs = new Register [arch.CountRegisters];
            if (regs.Length != values.Length)
                throw new ArgumentException ();
            for (int i = 0; i < regs.Length; i++) {
                if (arch.RegisterSizes [i] < 0)
                    continue;
                regs [i] = new Register (
                    this, arch.RegisterNames [i], i,
                    arch.RegisterSizes [i], true, values [i]);
            }
            from_current_frame = true;
        }
コード例 #3
0
ファイル: StackFrame.cs プロジェクト: baulig/debugger
        internal Registers(Registers old_regs)
        {
            important_indices = old_regs.important_indices;

            regs = new Register [old_regs.regs.Length];
            for (int i = 0; i < regs.Length; i++) {
                if (old_regs [i] == null)
                    continue;
                regs [i] = new Register (
                    this, old_regs [i].Name, i, old_regs [i].Size,
                    false, old_regs [i].GetValue ());
            }
        }
コード例 #4
0
ファイル: StackFrame.cs プロジェクト: baulig/debugger
        internal Registers(Architecture arch)
        {
            important_indices = arch.RegisterIndices;

            regs = new Register [arch.CountRegisters];
            for (int i = 0; i < regs.Length; i++) {
                if (arch.RegisterSizes [i] < 0)
                    continue;
                regs [i] = new Register (
                    this, arch.RegisterNames [i], i,
                    arch.RegisterSizes [i], false, 0);
            }
        }