mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-20 21:14:14 +08:00
Fix TORCH_CHECK macros when glog is used (#83216)
Makes TORCH_CHECK_* run unconditionally, leaving only TORCH_DCHECK_* special-cased to be optimized out in release builds. Fixes a bug in #82032, relating to this comment https://github.com/pytorch/pytorch/pull/82032#issuecomment-1203726409 Pull Request resolved: https://github.com/pytorch/pytorch/pull/83216 Approved by: https://github.com/ezyang, https://github.com/datumbox
This commit is contained in:
committed by
PyTorch MergeBot
parent
cff55682d8
commit
abb2204f6a
@ -50,13 +50,14 @@ INSTANTIATE_FOR_CONTAINER(set)
|
|||||||
#include <glog/logging.h>
|
#include <glog/logging.h>
|
||||||
|
|
||||||
// Additional macros on top of glog
|
// Additional macros on top of glog
|
||||||
#ifndef NDEBUG
|
|
||||||
#define TORCH_CHECK_EQ(val1, val2) CHECK_EQ(val1, val2)
|
#define TORCH_CHECK_EQ(val1, val2) CHECK_EQ(val1, val2)
|
||||||
#define TORCH_CHECK_NE(val1, val2) CHECK_NE(val1, val2)
|
#define TORCH_CHECK_NE(val1, val2) CHECK_NE(val1, val2)
|
||||||
#define TORCH_CHECK_LE(val1, val2) CHECK_LE(val1, val2)
|
#define TORCH_CHECK_LE(val1, val2) CHECK_LE(val1, val2)
|
||||||
#define TORCH_CHECK_LT(val1, val2) CHECK_LT(val1, val2)
|
#define TORCH_CHECK_LT(val1, val2) CHECK_LT(val1, val2)
|
||||||
#define TORCH_CHECK_GE(val1, val2) CHECK_GE(val1, val2)
|
#define TORCH_CHECK_GE(val1, val2) CHECK_GE(val1, val2)
|
||||||
#define TORCH_CHECK_GT(val1, val2) CHECK_GT(val1, val2)
|
#define TORCH_CHECK_GT(val1, val2) CHECK_GT(val1, val2)
|
||||||
|
|
||||||
|
#ifndef NDEBUG
|
||||||
#define TORCH_DCHECK_EQ(val1, val2) DCHECK_EQ(val1, val2)
|
#define TORCH_DCHECK_EQ(val1, val2) DCHECK_EQ(val1, val2)
|
||||||
#define TORCH_DCHECK_NE(val1, val2) DCHECK_NE(val1, val2)
|
#define TORCH_DCHECK_NE(val1, val2) DCHECK_NE(val1, val2)
|
||||||
#define TORCH_DCHECK_LE(val1, val2) DCHECK_LE(val1, val2)
|
#define TORCH_DCHECK_LE(val1, val2) DCHECK_LE(val1, val2)
|
||||||
@ -65,24 +66,6 @@ INSTANTIATE_FOR_CONTAINER(set)
|
|||||||
#define TORCH_DCHECK_GT(val1, val2) DCHECK_GT(val1, val2)
|
#define TORCH_DCHECK_GT(val1, val2) DCHECK_GT(val1, val2)
|
||||||
#else // !NDEBUG
|
#else // !NDEBUG
|
||||||
// These versions generate no code in optimized mode.
|
// These versions generate no code in optimized mode.
|
||||||
#define TORCH_CHECK_EQ(val1, val2) \
|
|
||||||
while (false) \
|
|
||||||
CHECK_EQ(val1, val2)
|
|
||||||
#define TORCH_CHECK_NE(val1, val2) \
|
|
||||||
while (false) \
|
|
||||||
CHECK_NE(val1, val2)
|
|
||||||
#define TORCH_CHECK_LE(val1, val2) \
|
|
||||||
while (false) \
|
|
||||||
CHECK_LE(val1, val2)
|
|
||||||
#define TORCH_CHECK_LT(val1, val2) \
|
|
||||||
while (false) \
|
|
||||||
CHECK_LT(val1, val2)
|
|
||||||
#define TORCH_CHECK_GE(val1, val2) \
|
|
||||||
while (false) \
|
|
||||||
CHECK_GE(val1, val2)
|
|
||||||
#define TORCH_CHECK_GT(val1, val2) \
|
|
||||||
while (false) \
|
|
||||||
CHECK_GT(val1, val2)
|
|
||||||
#define TORCH_DCHECK_EQ(val1, val2) \
|
#define TORCH_DCHECK_EQ(val1, val2) \
|
||||||
while (false) \
|
while (false) \
|
||||||
DCHECK_EQ(val1, val2)
|
DCHECK_EQ(val1, val2)
|
||||||
|
Reference in New Issue
Block a user