32 lines
		
	
	
		
			939 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			939 B
		
	
	
	
		
			C++
		
	
	
	
| //===- LazyEmittingLayerTest.cpp - Unit tests for the lazy emitting layer -===//
 | |
| //
 | |
| // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 | |
| // See https://llvm.org/LICENSE.txt for license information.
 | |
| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 | |
| //
 | |
| //===----------------------------------------------------------------------===//
 | |
| 
 | |
| #include "llvm/ExecutionEngine/Orc/LazyEmittingLayer.h"
 | |
| #include "llvm/ExecutionEngine/RuntimeDyld.h"
 | |
| #include "gtest/gtest.h"
 | |
| 
 | |
| namespace {
 | |
| 
 | |
| struct MockBaseLayer {
 | |
|   typedef int ModuleHandleT;
 | |
|   ModuleHandleT addModule(llvm::orc::VModuleKey,
 | |
|                           std::shared_ptr<llvm::Module>) {
 | |
|     return 42;
 | |
|   }
 | |
| };
 | |
| 
 | |
| TEST(LazyEmittingLayerTest, Empty) {
 | |
|   MockBaseLayer M;
 | |
|   llvm::orc::LazyEmittingLayer<MockBaseLayer> L(
 | |
|       llvm::AcknowledgeORCv1Deprecation, M);
 | |
|   cantFail(
 | |
|       L.addModule(llvm::orc::VModuleKey(), std::unique_ptr<llvm::Module>()));
 | |
| }
 | |
| 
 | |
| }
 |