mesa: replace ONE_DIV_LN2 constant with M_LOG2E
1/ln(2) is equivalent to log2(e), so define it as such. log2(e) = ln(e)/ln(2) = 1/ln(2) Worst of all, the definitions for M_LOG2E and ONE_DIV_LN2 (right beside each other!) weren't the same. Reviewed-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Matt Turner <mattst88@gmail.com> Signed-off-by: Brian Paul <brianp@vmware.com>
This commit is contained in:
@@ -366,10 +366,6 @@ static INLINE GLuint CPU_TO_LE32(GLuint x)
|
||||
#define M_LOG2E (1.4426950408889634074)
|
||||
#endif
|
||||
|
||||
#ifndef ONE_DIV_LN2
|
||||
#define ONE_DIV_LN2 (1.442695040888963456)
|
||||
#endif
|
||||
|
||||
#ifndef ONE_DIV_SQRT_LN2
|
||||
#define ONE_DIV_SQRT_LN2 (1.201122408786449815)
|
||||
#endif
|
||||
|
||||
@@ -459,7 +459,7 @@ _mesa_fetch_state(struct gl_context *ctx, const gl_state_index state[],
|
||||
value[0] = (ctx->Fog.End == ctx->Fog.Start)
|
||||
? 1.0f : (GLfloat)(-1.0F / (ctx->Fog.End - ctx->Fog.Start));
|
||||
value[1] = ctx->Fog.End * -value[0];
|
||||
value[2] = (GLfloat)(ctx->Fog.Density * ONE_DIV_LN2);
|
||||
value[2] = (GLfloat)(ctx->Fog.Density * M_LOG2E); /* M_LOG2E == 1/ln(2) */
|
||||
value[3] = (GLfloat)(ctx->Fog.Density * ONE_DIV_SQRT_LN2);
|
||||
return;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user