~bkerensa/ubuntu/raring/valgrind/merge-from-deb

« back to all changes in this revision

Viewing changes to include/vki-x86-linux.h

  • Committer: Bazaar Package Importer
  • Author(s): Sebastian Dröge
  • Date: 2006-06-26 00:17:17 UTC
  • mto: This revision was merged to the branch mainline in revision 11.
  • Revision ID: james.westby@ubuntu.com-20060626001717-qi51nzty57cb12q6
Tags: upstream-3.2.0
Import upstream version 3.2.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
7
7
   This file is part of Valgrind, a dynamic binary instrumentation
8
8
   framework.
9
9
 
10
 
   Copyright (C) 2000-2005 Julian Seward 
 
10
   Copyright (C) 2000-2006 Julian Seward 
11
11
      jseward@acm.org
12
12
 
13
13
   This program is free software; you can redistribute it and/or
268
268
#define VKI_O_TRUNC       01000 /* not fcntl */
269
269
#define VKI_O_APPEND      02000
270
270
#define VKI_O_NONBLOCK    04000
 
271
#define VKI_O_LARGEFILE 0100000
271
272
 
272
273
#define VKI_F_DUPFD             0       /* dup */
273
274
#define VKI_F_GETFD             1       /* get close_on_exec */
515
516
#define VKI_TIOCSPTLCK  _VKI_IOW('T',0x31, int)  /* Lock/unlock Pty */
516
517
 
517
518
#define VKI_FIOASYNC    0x5452
 
519
#define VKI_TIOCSERGETLSR   0x5459 /* Get line status register */
 
520
 
 
521
#define VKI_TIOCGICOUNT 0x545D  /* read serial port inline interrupt counts */
518
522
 
519
523
//----------------------------------------------------------------------
520
524
// From linux-2.6.8.1/include/asm-i386/poll.h
783
787
#define VKI_PTRACE_SETFPXREGS         19
784
788
 
785
789
//----------------------------------------------------------------------
 
790
// From linux-2.6.15.4/include/asm-i386/vm86.h
 
791
//----------------------------------------------------------------------
 
792
 
 
793
#define VKI_VM86_PLUS_INSTALL_CHECK     0
 
794
#define VKI_VM86_ENTER                  1
 
795
#define VKI_VM86_ENTER_NO_BYPASS        2
 
796
#define VKI_VM86_REQUEST_IRQ            3
 
797
#define VKI_VM86_FREE_IRQ               4
 
798
#define VKI_VM86_GET_IRQ_BITS           5
 
799
#define VKI_VM86_GET_AND_RESET_IRQ      6
 
800
 
 
801
struct vki_vm86_regs {
 
802
/*
 
803
 * normal regs, with special meaning for the segment descriptors..
 
804
 */
 
805
        long ebx;
 
806
        long ecx;
 
807
        long edx;
 
808
        long esi;
 
809
        long edi;
 
810
        long ebp;
 
811
        long eax;
 
812
        long __null_ds;
 
813
        long __null_es;
 
814
        long __null_fs;
 
815
        long __null_gs;
 
816
        long orig_eax;
 
817
        long eip;
 
818
        unsigned short cs, __csh;
 
819
        long eflags;
 
820
        long esp;
 
821
        unsigned short ss, __ssh;
 
822
/*
 
823
 * these are specific to v86 mode:
 
824
 */
 
825
        unsigned short es, __esh;
 
826
        unsigned short ds, __dsh;
 
827
        unsigned short fs, __fsh;
 
828
        unsigned short gs, __gsh;
 
829
};
 
830
 
 
831
struct vki_revectored_struct {
 
832
        unsigned long __map[8];                 /* 256 bits */
 
833
};
 
834
 
 
835
struct vki_vm86_struct {
 
836
        struct vki_vm86_regs regs;
 
837
        unsigned long flags;
 
838
        unsigned long screen_bitmap;
 
839
        unsigned long cpu_type;
 
840
        struct vki_revectored_struct int_revectored;
 
841
        struct vki_revectored_struct int21_revectored;
 
842
};
 
843
 
 
844
struct vki_vm86plus_info_struct {
 
845
        unsigned long force_return_for_pic:1;
 
846
        unsigned long vm86dbg_active:1;       /* for debugger */
 
847
        unsigned long vm86dbg_TFpendig:1;     /* for debugger */
 
848
        unsigned long unused:28;
 
849
        unsigned long is_vm86pus:1;           /* for vm86 internal use */
 
850
        unsigned char vm86dbg_intxxtab[32];   /* for debugger */
 
851
};
 
852
 
 
853
struct vki_vm86plus_struct {
 
854
        struct vki_vm86_regs regs;
 
855
        unsigned long flags;
 
856
        unsigned long screen_bitmap;
 
857
        unsigned long cpu_type;
 
858
        struct vki_revectored_struct int_revectored;
 
859
        struct vki_revectored_struct int21_revectored;
 
860
        struct vki_vm86plus_info_struct vm86plus;
 
861
};
 
862
 
 
863
//----------------------------------------------------------------------
786
864
// And that's it!
787
865
//----------------------------------------------------------------------
788
866