diff options
Diffstat (limited to 'contrib/llvm/tools/llvmc/example/Hello')
-rw-r--r-- | contrib/llvm/tools/llvmc/example/Hello/Hello.cpp | 33 | ||||
-rw-r--r-- | contrib/llvm/tools/llvmc/example/Hello/Makefile | 14 |
2 files changed, 47 insertions, 0 deletions
diff --git a/contrib/llvm/tools/llvmc/example/Hello/Hello.cpp b/contrib/llvm/tools/llvmc/example/Hello/Hello.cpp new file mode 100644 index 0000000..a7179ea --- /dev/null +++ b/contrib/llvm/tools/llvmc/example/Hello/Hello.cpp @@ -0,0 +1,33 @@ +//===- Hello.cpp - Example code from "Writing an LLVMC Plugin" ------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// Test plugin for LLVMC. Shows how to write plugins without using TableGen. +// +//===----------------------------------------------------------------------===// + +#include "llvm/CompilerDriver/CompilationGraph.h" +#include "llvm/CompilerDriver/Plugin.h" +#include "llvm/Support/raw_ostream.h" + +namespace { +struct MyPlugin : public llvmc::BasePlugin { + + void PreprocessOptions() const + {} + + void PopulateLanguageMap(llvmc::LanguageMap&) const + { outs() << "Hello!\n"; } + + void PopulateCompilationGraph(llvmc::CompilationGraph&) const + {} +}; + +static llvmc::RegisterPlugin<MyPlugin> RP("Hello", "Hello World plugin"); + +} diff --git a/contrib/llvm/tools/llvmc/example/Hello/Makefile b/contrib/llvm/tools/llvmc/example/Hello/Makefile new file mode 100644 index 0000000..10325e6 --- /dev/null +++ b/contrib/llvm/tools/llvmc/example/Hello/Makefile @@ -0,0 +1,14 @@ +##===- tools/llvmc/plugins/Hello/Makefile ------------------*- Makefile -*-===## +# +# The LLVM Compiler Infrastructure +# +# This file is distributed under the University of Illinois Open Source +# License. See LICENSE.TXT for details. +# +##===----------------------------------------------------------------------===## + +LEVEL = ../../../.. + +LLVMC_PLUGIN = Hello + +include $(LEVEL)/Makefile.common |