intel: Check that the batch is mapped per BEGIN, not each OUT.
authorEric Anholt <eric@anholt.net>
Fri, 5 Mar 2010 20:27:46 +0000 (12:27 -0800)
committerEric Anholt <eric@anholt.net>
Fri, 5 Mar 2010 23:23:30 +0000 (15:23 -0800)
Shaves 800 bytes off the driver.

src/mesa/drivers/dri/intel/intel_batchbuffer.h

index 79bdbc17ae10c82a6def8496aaa7fd8ab44218d3..860aa1327a15ddf00e1569a009044646ac3db29d 100644 (file)
@@ -86,7 +86,6 @@ intel_batchbuffer_space(struct intel_batchbuffer *batch)
 static INLINE void
 intel_batchbuffer_emit_dword(struct intel_batchbuffer *batch, GLuint dword)
 {
-   assert(batch->map);
    assert(intel_batchbuffer_space(batch) >= 4);
    *(GLuint *) (batch->ptr) = dword;
    batch->ptr += 4;
@@ -118,6 +117,7 @@ static INLINE uint32_t float_as_int(float f)
 
 #define BEGIN_BATCH(n) do {                            \
    intel_batchbuffer_require_space(intel->batch, (n)*4); \
+   assert(intel->batch->map);                                          \
    assert(intel->batch->emit.start_ptr == NULL);                       \
    intel->batch->emit.total = (n) * 4;                                 \
    intel->batch->emit.start_ptr = intel->batch->ptr;                   \