Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
fpudispatch.c File Reference
#include "float.h"
#include <linux/bug.h>
#include <linux/kernel.h>
#include <asm/processor.h>

Go to the source code of this file.

Macros

#define FPUDEBUG   0
 
#define COPR_INST   0x30000000
 
#define extru(r, pos, len)   (((r) >> (31-(pos))) & (( 1 << (len)) - 1))
 
#define fpmajorpos   5
 
#define fpr1pos   10
 
#define fpr2pos   15
 
#define fptpos   31
 
#define fpsubpos   18
 
#define fpclass1subpos   16
 
#define fpclasspos   22
 
#define fpfmtpos   20
 
#define fpdfpos   18
 
#define fpnulpos   26
 
#define fpxr1pos   24
 
#define fpxr2pos   19
 
#define fpxtpos   25
 
#define fpxpos   23
 
#define fp0efmtpos   20
 
#define fprm1pos   10
 
#define fprm2pos   15
 
#define fptmpos   31
 
#define fprapos   25
 
#define fptapos   20
 
#define fpmultifmt   26
 
#define fpraupos   18
 
#define fpxrm2pos   19
 
#define fpralpos   23
 
#define fpxrm1pos   24
 
#define fpfusedsubop   26
 
#define fpzeroreg   (32*sizeof(double)/sizeof(u_int))
 
#define get_major(op)   extru(op,fpmajorpos,6)
 
#define get_class(op)   extru(op,fpclasspos,2)
 
#define get_subop(op)   extru(op,fpsubpos,3)
 
#define get_subop1_PA1_1(op)   extru(op,fpclass1subpos,2) /* PA89 (1.1) fmt */
 
#define get_subop1_PA2_0(op)   extru(op,fpclass1subpos,3) /* PA 2.0 fmt */
 
#define MAJOR_0C_EXCP   0x09
 
#define MAJOR_0E_EXCP   0x0b
 
#define MAJOR_06_EXCP   0x03
 
#define MAJOR_26_EXCP   0x23
 
#define MAJOR_2E_EXCP   0x2b
 
#define PA83_UNIMP_EXCP   0x01
 
#define FPU_TYPE_FLAG_POS   (EM_FPU_TYPE_OFFSET>>2)
 
#define TIMEX_ROLEX_FPU_MASK   (TIMEX_EXTEN_FLAG|ROLEX_EXTEN_FLAG)
 
#define _PROTOTYPES
 
#define VASSERT(x)
 

Functions

u_int fpudispatch (u_int ir, u_int excp_code, u_int holder, u_int fpregs[])
 
u_int emfpudispatch (u_int ir, u_int dummy1, u_int dummy2, u_int fpregs[])
 

Macro Definition Documentation

#define _PROTOTYPES

Definition at line 152 of file fpudispatch.c.

#define COPR_INST   0x30000000

Definition at line 59 of file fpudispatch.c.

#define extru (   r,
  pos,
  len 
)    (((r) >> (31-(pos))) & (( 1 << (len)) - 1))

Definition at line 65 of file fpudispatch.c.

#define fp0efmtpos   20

Definition at line 84 of file fpudispatch.c.

#define fpclass1subpos   16

Definition at line 72 of file fpudispatch.c.

#define fpclasspos   22

Definition at line 73 of file fpudispatch.c.

#define fpdfpos   18

Definition at line 75 of file fpudispatch.c.

#define fpfmtpos   20

Definition at line 74 of file fpudispatch.c.

#define fpfusedsubop   26

Definition at line 105 of file fpudispatch.c.

#define fpmajorpos   5

Definition at line 67 of file fpudispatch.c.

#define fpmultifmt   26

Definition at line 93 of file fpudispatch.c.

#define fpnulpos   26

Definition at line 76 of file fpudispatch.c.

#define fpr1pos   10

Definition at line 68 of file fpudispatch.c.

#define fpr2pos   15

Definition at line 69 of file fpudispatch.c.

#define fpralpos   23

Definition at line 102 of file fpudispatch.c.

#define fprapos   25

Definition at line 91 of file fpudispatch.c.

#define fpraupos   18

Definition at line 99 of file fpudispatch.c.

#define fprm1pos   10

Definition at line 88 of file fpudispatch.c.

#define fprm2pos   15

Definition at line 89 of file fpudispatch.c.

#define fpsubpos   18

Definition at line 71 of file fpudispatch.c.

#define fptapos   20

Definition at line 92 of file fpudispatch.c.

#define fptmpos   31

Definition at line 90 of file fpudispatch.c.

#define fptpos   31

Definition at line 70 of file fpudispatch.c.

#define FPU_TYPE_FLAG_POS   (EM_FPU_TYPE_OFFSET>>2)

Definition at line 146 of file fpudispatch.c.

#define FPUDEBUG   0

Definition at line 50 of file fpudispatch.c.

#define fpxpos   23

Definition at line 83 of file fpudispatch.c.

#define fpxr1pos   24

Definition at line 80 of file fpudispatch.c.

#define fpxr2pos   19

Definition at line 81 of file fpudispatch.c.

#define fpxrm1pos   24

Definition at line 103 of file fpudispatch.c.

#define fpxrm2pos   19

Definition at line 100 of file fpudispatch.c.

#define fpxtpos   25

Definition at line 82 of file fpudispatch.c.

#define fpzeroreg   (32*sizeof(double)/sizeof(u_int))

Definition at line 111 of file fpudispatch.c.

#define get_class (   op)    extru(op,fpclasspos,2)

Definition at line 121 of file fpudispatch.c.

#define get_major (   op)    extru(op,fpmajorpos,6)

Definition at line 116 of file fpudispatch.c.

#define get_subop (   op)    extru(op,fpsubpos,3)

Definition at line 126 of file fpudispatch.c.

#define get_subop1_PA1_1 (   op)    extru(op,fpclass1subpos,2) /* PA89 (1.1) fmt */

Definition at line 131 of file fpudispatch.c.

#define get_subop1_PA2_0 (   op)    extru(op,fpclass1subpos,3) /* PA 2.0 fmt */

Definition at line 132 of file fpudispatch.c.

#define MAJOR_06_EXCP   0x03

Definition at line 137 of file fpudispatch.c.

#define MAJOR_0C_EXCP   0x09

Definition at line 135 of file fpudispatch.c.

#define MAJOR_0E_EXCP   0x0b

Definition at line 136 of file fpudispatch.c.

#define MAJOR_26_EXCP   0x23

Definition at line 138 of file fpudispatch.c.

#define MAJOR_2E_EXCP   0x2b

Definition at line 139 of file fpudispatch.c.

#define PA83_UNIMP_EXCP   0x01

Definition at line 140 of file fpudispatch.c.

#define TIMEX_ROLEX_FPU_MASK   (TIMEX_EXTEN_FLAG|ROLEX_EXTEN_FLAG)

Definition at line 147 of file fpudispatch.c.

#define VASSERT (   x)

Definition at line 169 of file fpudispatch.c.

Function Documentation

u_int emfpudispatch ( u_int  ir,
u_int  dummy1,
u_int  dummy2,
u_int  fpregs[] 
)

Definition at line 250 of file fpudispatch.c.

u_int fpudispatch ( u_int  ir,
u_int  excp_code,
u_int  holder,
u_int  fpregs[] 
)

Definition at line 195 of file fpudispatch.c.