+created overloaded new/delete
This commit is contained in:
35
examples_ptx/ispc_malloc.cpp
Normal file
35
examples_ptx/ispc_malloc.cpp
Normal file
@@ -0,0 +1,35 @@
|
||||
#include <cstdio>
|
||||
#include <cstdlib>
|
||||
#include <iostream>
|
||||
#include <cstring>
|
||||
#include "ispc_malloc.h"
|
||||
|
||||
#ifdef _CUDA_
|
||||
|
||||
void * operator new(size_t size) throw(std::bad_alloc)
|
||||
{
|
||||
void *ptr;
|
||||
ispc_malloc(&ptr, size);
|
||||
return ptr;
|
||||
}
|
||||
void operator delete(void *ptr) throw()
|
||||
{
|
||||
ispc_free(ptr);
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
void ispc_malloc(void **ptr, const size_t size)
|
||||
{
|
||||
*ptr = malloc(size);
|
||||
}
|
||||
void ispc_free(void *ptr)
|
||||
{
|
||||
free(ptr);
|
||||
}
|
||||
void ispc_memset(void *ptr, int value, size_t size)
|
||||
{
|
||||
memset(ptr, value, size);
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user