Set the same access ref_id to gpu_stmt and MemoryAccess
Fix bug that do not free isl_ast_node correctly
Add getHostGuard function

This function is used to get the guard of generated AST node for host code.
Refactor codes when GPU_CODEGEN is defined
Add an IslPTXGenerator member to isl NodeBuilder
Set PTXGen in NodeBuilder
Add createForGPGPU function to generate the LLVM IR
Fix bug: move up isl_ast_expr_free(StmtExpr)

Include the free statement for if and if-not GPU_CODEGEN defined
Add #ifdef GPU_CODEGEN guard to changes of NodeBuilder
Fix a typo and update format
Make createForGPGPU a member method os IslNodeBuilder
Add setGPUKernel function to set the current kernel
Add function addKernelSynchronizaton

By using this function we can add synchronization statement to kernel function.
Add createKernelDomain, createKernelCopy and createKernelSync
Get the current llvm::Value of grid ids and block ids
Remove setGPUKernel function.

Add a struct ppcg_kernel * parameter directly to startGeneraion method.
Set correct Value for GPU ids before we call createUser

Fill in the IDTOValue with Values of block ids and thread ids and their
corresponding isl_ids.
Update format
Rename functions

Remname
 - getCUDABlockWidth to getCUDABlockDimX
 - getCUDABlockWidth to getCUDABlockDimY
 - getCUDAGridWidth to getCUDAGridDimX
 - getCUDAGridWidth to getCUDAGridDimY
Add function getCUDABlockDimZ

Get the cuda block size of Z-Dimension.