Changes to the SPIR verifier by CodePlay:
1)Added Linkage type checker
  This checker verifies that no linkage types other
  than those allowed in the SPIR spec are used.
2)Added global variable verifier
  Added an Iterator on global variables and
  a check for global variable linkage type
  checks valid address spaces for global variables.
  It also checks the naming convention for OpenCL C function-scope
  __private variables which become module-scope LLVM variables
  and are required to be prefixed byt he function name.
3)Added kernel prototype checker
    1. Return type of a kernel has to be void
    2. Kernel arguments cannot be nested pointers
    3. Pointer kernel arguments cannot refer to the private address space
4)Added support for lit tests
5)Added lit tests for linkage,global variables, kernel prototype
6)update TODO and a comment

notes:
1) the lit tests path to the executable files depends on the llvm version