diff options
author | Keith Whitwell <[email protected]> | 2005-07-10 11:23:10 +0000 |
---|---|---|
committer | Keith Whitwell <[email protected]> | 2005-07-10 11:23:10 +0000 |
commit | 9311bc253e0942af621b7efab0549ed75c0ce4a8 (patch) | |
tree | f977e151531fd1cf3157d8cab16697f90270a90e /src/mesa/tnl/t_vb_arbprogram.h | |
parent | 0cfbd849ecaa59b842eca303d581d4ce90440bac (diff) |
Add runtime compiled x87 implementations for most of the remaining
opcodes. When enabled via environment vars, gears runs and almost
looks right but other apps are still quite buggy.
Diffstat (limited to 'src/mesa/tnl/t_vb_arbprogram.h')
-rw-r--r-- | src/mesa/tnl/t_vb_arbprogram.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/mesa/tnl/t_vb_arbprogram.h b/src/mesa/tnl/t_vb_arbprogram.h index 6279f098f6f..004269d60e9 100644 --- a/src/mesa/tnl/t_vb_arbprogram.h +++ b/src/mesa/tnl/t_vb_arbprogram.h @@ -60,6 +60,9 @@ #define REG_ONES 65 /* 1,1,1,1 */ #define REG_SWZ 66 /* -1,1,0,0 */ #define REG_NEG 67 /* -1,-1,-1,-1 */ +#define REG_LIT 68 /* 1,0,0,1 */ +#define REG_LIT2 69 /* 1,0,0,1 */ +#define REG_SCRATCH 70 /* internal temporary */ #define REG_UNDEF 127 /* special case - never used */ #define REG_MAX 128 #define REG_INVALID ~0 @@ -125,6 +128,13 @@ struct output { /*--------------------------------------------------------------------------- */ +#ifdef NO_FAST_MATH +#define RESTORE_FPU (DEFAULT_X86_FPU) +#define RND_NEG_FPU (DEFAULT_X86_FPU | 0x400) +#else +#define RESTORE_FPU (FAST_X86_FPU) +#define RND_NEG_FPU (FAST_X86_FPU | 0x400) +#endif /*! * Private storage for the vertex program pipeline stage. @@ -148,6 +158,9 @@ struct arb_vp_machine { struct vertex_buffer *VB; GLcontext *ctx; + GLshort fpucntl_rnd_neg; /* constant value */ + GLshort fpucntl_restore; /* constant value */ + GLboolean try_codegen; }; |