7248349dd5
ECR #333753 - Part of the changes to allow use of llvm 3.6 These changes required with llvm 3.6 but do not break compilation with llvm 3.2. Testing: precheckin, smoke Reviewed by Brian Sumner Affected files ... ... //depot/stg/opencl/drivers/opencl/compiler/lib/amdoclcl.def.in#10 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/amdoclcl.map.in#9 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/build/Makefile.common#28 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/spir.hpp#4 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/cpu/build/Makefile.cpu#10 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDTypes.h#2 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/build/Makefile.gpu#29 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/hsail_be.cpp#38 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/sc/HSAIL/hsail-tools/HSAILAsm/HSAILAsm.cpp#5 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/sc/HSAIL/hsail-tools/htdefs#6 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/jit/src/build/Makefile.src#4 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/jit/src/jit.cpp#14 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/promotions/oclutils/top.hpp#5 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/cpu/cpuprogram.cpp#63 edit
41 řádky
1.0 KiB
C++
41 řádky
1.0 KiB
C++
//
|
|
// Copyright (c) 2008 Advanced Micro Devices, Inc. All rights reserved.
|
|
//
|
|
#ifndef _BE_SPIR_HPP_
|
|
#define _BE_SPIR_HPP_
|
|
#include <string>
|
|
#include "aclTypes.h"
|
|
#include "compiler_stage.hpp"
|
|
namespace amdcl
|
|
{
|
|
/*@}*/
|
|
|
|
/*! \addtogroup CompilerLibrary
|
|
*
|
|
* \copydoc amdcl::SPIR
|
|
*
|
|
* @{
|
|
* \brief Implementation of the Frontend interface to compile
|
|
* from OpenCL C to LLVM-IR.
|
|
*/
|
|
class SPIR : public LLVMCompilerStage {
|
|
SPIR(SPIR&); // DO NOT IMPLEMENT.
|
|
SPIR(); // DO NOT IMPLEMENT.
|
|
|
|
public:
|
|
SPIR(aclCompiler* cl, aclBinary* elf, aclLogFunction log)
|
|
: LLVMCompilerStage(cl, elf, log) {}
|
|
|
|
virtual ~SPIR() {}
|
|
virtual llvm::Module* loadBitcode(std::string &spirBinary) override;
|
|
virtual llvm::Module* loadSPIR(std::string &spirBinary);
|
|
const void*
|
|
toBinary(const void *text, size_t text_size, size_t *binary_size);
|
|
const void*
|
|
toText(const void *binary, size_t binary_size, size_t *text_size);
|
|
|
|
}; // class SPIR
|
|
/*@}*/
|
|
} // namespac amdcl
|
|
#endif // _BE_SPIR_HPP_
|