diff options
author | Daniel Dunbar <daniel@zuster.org> | 2009-02-04 21:17:21 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2009-02-04 21:17:21 +0000 |
commit | 4b5f0a4bd6645e87e5feae4be4675ce87d97b4a5 (patch) | |
tree | 11a4c9d807c568e114691cf1a9192076bae0e6a1 /lib/CodeGen/CGCall.cpp | |
parent | 42c9ffd02ef3691f04c63c4869d1f0530d7e88ff (diff) |
Add asserts that the function signature matches the other arguments provide
to CGCall functions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63775 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGCall.cpp')
-rw-r--r-- | lib/CodeGen/CGCall.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/CodeGen/CGCall.cpp b/lib/CodeGen/CGCall.cpp index 2ad8f917e1..f28aa2f649 100644 --- a/lib/CodeGen/CGCall.cpp +++ b/lib/CodeGen/CGCall.cpp @@ -1167,6 +1167,8 @@ void CodeGenFunction::EmitFunctionProlog(const CGFunctionInfo &FI, ++AI; } + assert(FI.arg_size() == Args.size() && + "Mismatch between function signature & arguments."); CGFunctionInfo::const_arg_iterator info_it = FI.arg_begin(); for (FunctionArgList::const_iterator i = Args.begin(), e = Args.end(); i != e; ++i, ++info_it) { @@ -1316,6 +1318,8 @@ RValue CodeGenFunction::EmitCall(const CGFunctionInfo &CallInfo, assert(0 && "Invalid ABI kind for return argument"); } + assert(CallInfo.arg_size() == CallArgs.size() && + "Mismatch between function signature & arguments."); CGFunctionInfo::const_arg_iterator info_it = CallInfo.arg_begin(); for (CallArgList::const_iterator I = CallArgs.begin(), E = CallArgs.end(); I != E; ++I, ++info_it) { |