creating branch for adding support for CUDA 3.x and Fermi

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6829]
compiles with CUDA 3.1 (but, nothing tested)

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6832]
detect changes to .l and .y files

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6834]
- template runs/passes with CUDA 3.1, but requires that CUDA 2.3 
is installed for math intrinsics used in instructions.cc (since
CUDA 3.1 does not seem to define __uint2float).
- currently cuda-math.h has hardcoded paths to my own install of
CUDA 2.3 (need to determine whether we can build simulator with
CUDA 2.3 and run CUDA 3.1 / compute_2x PTX, or need to make 
current setup more portable)
- modified ptxinfo.l to print out meaningful error message if 
error occurs on first line
- modified ptxinfo.l,y to understand "for 'compute_NN'" syntax
- updated template to 3.1 SDK version  
- updated cuda_runtime_api.cc to select highest compute capability
version when multiple versions are present.
- updated template/BlackScholes Makefiles to generate a "DLL build"
instead of static linked build (still confusing... requires one to
copy config files... probably need to modify config scripts)

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6837]
- BlackScholes passing on CUDA 3.1
- Added fma operation by simply calling mad, however in reality fma is supposed to
  be more accurate than mad.  For now, properly emulating fma (to get the extra
  precision) isn't a priority.

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6839]
- add placeholders for new (e.g., PTX 2.x) directives and instructions
- update regression script to use compute sdk location for cuda (both
  distributed in one download now)

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6846]
- adding placeholders for new builtin registers

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6848]
adding parsing for opaque specifiers 

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6851]
- integrate Wilson's bug fixes from release	

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6852]
- ifdef out stream stuff (not compatible with CUDA 3.1 :)

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6853]
template compiled with "make noinline=1" now parses, runs, passes

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6857]
- bug fix: parsing hex int constants didn't have a-fA-F!?!
- modify template to use printf from kernel (this works on our Fermi card--want it working on simulator for debugging)
- add support for extern function declarations (so don't try to assemble them)... printf is extern

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6862]
- add support for cvta and isspacep instructions (currently assuming
a fixed address mapping between shared,local to generic that depends
upon hardware thread context used...  might be interesting to explore
tradeoffs at some point)
- remove util.h... we don't need TRUE, FALSE anymore now that 
everything is C++
- remove some dead code from shader_decode

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6867]
- add support for ld/st with generic addresses
- add support for parsing cache operators (still need to pass to timing model)

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6868]
integrating Wilson's bugfixes from release branch

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6869]
- adding new memory_space_t type to enable differentiation of different
parameter spaces (kernel parameters are conceptually different from
function parameters, but PTX only has one .param keyword)
- removing more dead code

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6870]
param space updates for correct parsing (still need to allocate thread 
local storage for local param memory)

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6871]
replacing suspicious looking code for local memory allocation management 

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6873]
getting rid of void pointers for ptx_thread_info 

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6874]
- added *implied* local memory stack pointer for functional execution 
(still need to determine framesize during parsing, and need to support
alternate mode were stack pointer is explicit register a la zev...)
- define local param mapping to local memory for functional execution

[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 6875]