Mesa (master): r600: Assert output registers have a valid export index.

Alex Deucher agd5f at kemper.freedesktop.org
Tue Jun 8 12:40:54 PDT 2010


Module: Mesa
Branch: master
Commit: 1bf75a921bcd11dfdc389f490081d83ab536fc58
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1bf75a921bcd11dfdc389f490081d83ab536fc58

Author: Henri Verbeet <hverbeet at gmail.com>
Date:   Tue Jun  8 15:29:04 2010 -0400

r600: Assert output registers have a valid export index.

---

 src/mesa/drivers/dri/r600/r700_assembler.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/mesa/drivers/dri/r600/r700_assembler.c b/src/mesa/drivers/dri/r600/r700_assembler.c
index 2e64a57..652fd65 100644
--- a/src/mesa/drivers/dri/r600/r700_assembler.c
+++ b/src/mesa/drivers/dri/r600/r700_assembler.c
@@ -2609,6 +2609,8 @@ GLboolean next_ins(r700_AssemblerBase *pAsm)
       
     if(pAsm->D.dst.rtype == DST_REG_OUT) 
     {
+        assert(pAsm->D.dst.reg >= pAsm->starting_export_register_number);
+
         if(pAsm->D.dst.op3) 
         {        
             // There is no mask for OP3 instructions, so all channels are written        
@@ -6347,6 +6349,8 @@ GLboolean Process_Export(r700_AssemblerBase* pAsm,
 
     if (export_count == 1) 
     {
+        assert(starting_register_number >= pAsm->starting_export_register_number);
+
         ucWriteMask = pAsm->pucOutMask[starting_register_number - pAsm->starting_export_register_number];
 	/* exports Z as a float into Red channel */
 	if (GL_TRUE == is_depth_export)



More information about the mesa-commit mailing list