diff options
author | Duncan Sands <baldrick@free.fr> | 2010-11-20 11:25:00 +0000 |
---|---|---|
committer | Duncan Sands <baldrick@free.fr> | 2010-11-20 11:25:00 +0000 |
commit | 59d2dad59ebba1d82e5b72f78b7a5b2c873445d7 (patch) | |
tree | ccebb41eaf760e4dc3e2092947ba9a7e8e0bfcc1 /include | |
parent | b9e6fe1e3afe3c4cdbdddfb563adc10c439dc296 (diff) | |
download | external_llvm-59d2dad59ebba1d82e5b72f78b7a5b2c873445d7.zip external_llvm-59d2dad59ebba1d82e5b72f78b7a5b2c873445d7.tar.gz external_llvm-59d2dad59ebba1d82e5b72f78b7a5b2c873445d7.tar.bz2 |
On X86, MEMBARRIER, MFENCE, SFENCE, LFENCE are not target memory intrinsics,
so don't claim they are. They are allocated using DAG.getNode, so attempts
to access MemSDNode fields results in reading off the end of the allocated
memory. This fixes crashes with "llc -debug" due to debug code trying to
print MemSDNode fields for these barrier nodes (since the crashes are not
deterministic, use valgrind to see this). Add some nasty checking to try
to catch this kind of thing in the future.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119901 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/CodeGen/SelectionDAG.h | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/include/llvm/CodeGen/SelectionDAG.h b/include/llvm/CodeGen/SelectionDAG.h index 4dfc3c6..44059b5 100644 --- a/include/llvm/CodeGen/SelectionDAG.h +++ b/include/llvm/CodeGen/SelectionDAG.h @@ -171,9 +171,6 @@ class SelectionDAG { /// DbgInfo - Tracks dbg_value information through SDISel. SDDbgInfo *DbgInfo; - /// VerifyNode - Sanity check the given node. Aborts if it is invalid. - void VerifyNode(SDNode *N); - /// setGraphColorHelper - Implementation of setSubgraphColor. /// Return whether we had to truncate the search. /// |