intel: Add multisample scaled blitting in blorp engine

In traditional multisampled framebuffer rendering, color samples must be explicitly
resolved via BlitFramebuffer before doing the scaled blitting of the framebuffer.
So, scaled blitting of a multisample framebuffer takes two separate calls to
BlitFramebuffer.

This patch implements the functionality of doing multisampled scaled resolve using
just one BlitFramebuffer call. Important changes involved in this patch are listed
below:
1. Add fractional scale/offset capability.
2. Modify blorp setup code to handle scaled blits properly.
   - Do register allocation for UD and float registers.
   - Use float registers to do scale / offset texture coordinates.
   - Change offset computation to consider float coordinates.
   - Round the scaled & offset coordinates down to integer.
   - Make relevant changes to ensure correct blitting of stencil / depth buffers.
3. Linear filter is not yet implemented in blorp. So, don't use blorp engine to do
   single sampled scaled blitting.
4. if INTEL_DEBUG=blorp is set, recompile the blorp shader to dump the native code
   for blorp blit. This will not effect performance but assist in debugging.

Note: Observed no piglit regressions on sandybridge & ivybridge with these changes.
i965: Enable ext_framebuffer_multisample_blit_scaled on intel h/w

This patch enables ext_framebuffer_multisample_blit_scaled extension
on intel h/w >= gen6.

Note: Patches for piglit tests to verify this functionality are out
for review on piglit mailing list. Tests pass for all of the scaling
factors except 1.3 and 1.8. I'm still investigating what's so special
about these scaling factors. I'll update my patches to fix the issue
along with other review comments.