mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 20:32:21 +00:00
Recover the ability to 'b CheckFailed' after r231577
Given that the stated purpose of `CheckFailed()` is to provide a nice spot for a breakpoint, it'd be nice not to have to use a regex to break on it. Recover the ability to simply use `b CheckFailed` by specializing the message-only version, and by changing the variadic version to call into the message-only version. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@232268 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
5712ee147f
commit
f141a5534e
@ -141,13 +141,20 @@ namespace {
|
||||
}
|
||||
}
|
||||
|
||||
// CheckFailed - A check failed, so print out the condition and the message
|
||||
// that failed. This provides a nice place to put a breakpoint if you want
|
||||
// to see why something is not correct.
|
||||
template <typename... Ts>
|
||||
void CheckFailed(const Twine &Message, const Ts &...Vs) {
|
||||
MessagesStr << Message << '\n';
|
||||
WriteValues({Vs...});
|
||||
// \brief A check failed, so printout out the condition and the message.
|
||||
//
|
||||
// This provides a nice place to put a breakpoint if you want to see why
|
||||
// something is not correct.
|
||||
void CheckFailed(const Twine &Message) { MessagesStr << Message << '\n'; }
|
||||
|
||||
// \brief A check failed (with values to print).
|
||||
//
|
||||
// This calls the Message-only version so that the above is easier to set a
|
||||
// breakpoint on.
|
||||
template <typename T1, typename... Ts>
|
||||
void CheckFailed(const Twine &Message, const T1 &V1, const Ts &...Vs) {
|
||||
CheckFailed(Message);
|
||||
WriteValues({V1, Vs...});
|
||||
}
|
||||
};
|
||||
}
|
||||
|
@ -131,15 +131,24 @@ private:
|
||||
template <typename... Ts> void WriteTs() {}
|
||||
|
||||
public:
|
||||
// CheckFailed - A check failed, so print out the condition and the message
|
||||
// that failed. This provides a nice place to put a breakpoint if you want
|
||||
// to see why something is not correct.
|
||||
template <typename... Ts>
|
||||
void CheckFailed(const Twine &Message, const Ts &... Vs) {
|
||||
// \brief A check failed, so printout out the condition and the message.
|
||||
//
|
||||
// This provides a nice place to put a breakpoint if you want to see why
|
||||
// something is not correct.
|
||||
void CheckFailed(const Twine &Message) {
|
||||
OS << Message << '\n';
|
||||
WriteTs(Vs...);
|
||||
Broken = true;
|
||||
}
|
||||
|
||||
// \brief A check failed (with values to print).
|
||||
//
|
||||
// This calls the Message-only version so that the above is easier to set a
|
||||
// breakpoint on.
|
||||
template <typename T1, typename... Ts>
|
||||
void CheckFailed(const Twine &Message, const T1 &V1, const Ts &... Vs) {
|
||||
CheckFailed(Message);
|
||||
WriteTs(V1, Vs...);
|
||||
}
|
||||
};
|
||||
|
||||
class Verifier : public InstVisitor<Verifier>, VerifierSupport {
|
||||
|
Loading…
Reference in New Issue
Block a user