nrm - Normalize

nrm - Normalize

Calling Format

nrm     dest, src

Operands

Name Registers
dest A temporary register.
src A temporary register or input register.

You cannot specify the same register for src and dest.

Overview

Stores the normalized result of src in dest.

Operation

tmp = sqrt ( src.x * src.x + src.y * src.y + src.z * src.z + src.w * src.w )
dest.x = src.x* ( 1 / tmp )
dest.y = src.y* ( 1 / tmp )
dest.z = src.z* ( 1 / tmp )
dest.w = src.w* ( 1 / tmp )

Macro Expansion

dp4     dest.x, src,    src
rsq     dest.x, dest.x
mul     dest,   src,    dest.x

Code Example

nrm     r0,     v0

Timetable

12345678910 111213
dp4 read MUL ADD ADD post write
rsq STALL read RCP / RSQ post write
mul STALL read MUL post write

Revision History

2011/12/20
Initial version.

CONFIDENTIAL