DieHard automatically hardens software applications against a wide range of bugs. These bugs, known as memory errors, often end up as serious security vulnerabilities, cause crashes, or lead to unpredictable behavior. DieHard either eliminates these bugs altogether, or avoids them with high probability.