aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/SafeStackLayout.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dimitry@andric.com>2018-05-12 19:59:54 +0000
committerDimitry Andric <dimitry@andric.com>2018-05-12 19:59:54 +0000
commit74f298920281cbf94facf61fe06ddb1a326de704 (patch)
tree5832e351a5f32e572afb2786c5b8ffc5563f4919 /llvm/lib/CodeGen/SafeStackLayout.cpp
parent6a68f38c0c121f00070fdac663486ced7f6f4976 (diff)
downloadllvm-74f298920281cbf94facf61fe06ddb1a326de704.zip
llvm-74f298920281cbf94facf61fe06ddb1a326de704.tar.gz
llvm-74f298920281cbf94facf61fe06ddb1a326de704.tar.bz2
Clear converters map after X86 Domain Reassignment to avoid crashes
Summary: As reported in PR37264, in some cases the X86 Domain Reassignment `runOnMachineFunction()` is called twice. Because it only deletes the `.second` members of its `InstrConverterBaseMap`, and does not clean up the map itself, this can lead to double frees and crashes. Use `DeleteContainerSeconds()` instead, so the `Converters` map can safely be reinitialized and its members re-deleted for each X86 Domain Reassignment pass. Reviewers: guyblank, craig.topper Reviewed By: craig.topper Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D46425 llvm-svn: 332176
Diffstat (limited to 'llvm/lib/CodeGen/SafeStackLayout.cpp')
0 files changed, 0 insertions, 0 deletions