]> granicus.if.org Git - llvm/commit
Turn some C-style vararg into variadic templates
authorSerge Guelton <sguelton@quarkslab.com>
Tue, 11 Apr 2017 08:36:52 +0000 (08:36 +0000)
committerSerge Guelton <sguelton@quarkslab.com>
Tue, 11 Apr 2017 08:36:52 +0000 (08:36 +0000)
commitec124b3a6f9f60313f604cdf3e199f6540311d46
treea830dac94e6dde071dda081f9d68d97548697fb4
parent262869e2bf83bc104a77edf733241fb4f385573a
Turn some C-style vararg into variadic templates

Module::getOrInsertFunction is using C-style vararg instead of
variadic templates.

From a user prospective, it forces the use of an annoying nullptr
to mark the end of the vararg, and there's not type checking on the
arguments. The variadic template is an obvious solution to both
issues.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@299925 91177308-0d34-0410-b5e6-96231b3b80d8
24 files changed:
include/llvm/IR/Module.h
lib/CodeGen/CountingFunctionInserter.cpp
lib/CodeGen/IntrinsicLowering.cpp
lib/CodeGen/MachineOutliner.cpp
lib/CodeGen/SafeStack.cpp
lib/CodeGen/SjLjEHPrepare.cpp
lib/CodeGen/StackProtector.cpp
lib/CodeGen/TargetLoweringBase.cpp
lib/IR/Instructions.cpp
lib/IR/Module.cpp
lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
lib/Target/Mips/Mips16HardFloat.cpp
lib/Target/X86/X86ISelLowering.cpp
lib/Transforms/IPO/CrossDSOCFI.cpp
lib/Transforms/IPO/WholeProgramDevirt.cpp
lib/Transforms/Instrumentation/AddressSanitizer.cpp
lib/Transforms/Instrumentation/EfficiencySanitizer.cpp
lib/Transforms/Instrumentation/MemorySanitizer.cpp
lib/Transforms/Instrumentation/SanitizerCoverage.cpp
lib/Transforms/Instrumentation/ThreadSanitizer.cpp
lib/Transforms/Scalar/LoopIdiomRecognize.cpp
lib/Transforms/Utils/BuildLibCalls.cpp
lib/Transforms/Utils/SimplifyLibCalls.cpp
tools/lli/lli.cpp