From ec8aeb0bc1648fdc81b838ab8e35ee06c44519c3 Mon Sep 17 00:00:00 2001 From: Yuri Gorshenin Date: Mon, 13 Oct 2014 11:44:06 +0000 Subject: [PATCH] [asan-asm-instrumentation] Follow-up fixes to r219602: asserts are moved into function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219610 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../X86/AsmParser/X86AsmInstrumentation.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/Target/X86/AsmParser/X86AsmInstrumentation.cpp b/lib/Target/X86/AsmParser/X86AsmInstrumentation.cpp index 1f1a9df10b3..dbc5f281461 100644 --- a/lib/Target/X86/AsmParser/X86AsmInstrumentation.cpp +++ b/lib/Target/X86/AsmParser/X86AsmInstrumentation.cpp @@ -39,14 +39,14 @@ static cl::opt ClAsanInstrumentAssembly( const int64_t MinAllowedDisplacement = std::numeric_limits::min(); const int64_t MaxAllowedDisplacement = std::numeric_limits::max(); -int64_t ApplyBounds(int64_t Displacement) { +int64_t ApplyDisplacementBounds(int64_t Displacement) { return std::max(std::min(MaxAllowedDisplacement, Displacement), MinAllowedDisplacement); } -bool InBounds(int64_t Displacement) { - return Displacement >= MinAllowedDisplacement && - Displacement <= MaxAllowedDisplacement; +void CheckDisplacementBounds(int64_t Displacement) { + assert(Displacement >= MinAllowedDisplacement && + Displacement <= MaxAllowedDisplacement); } bool IsStackReg(unsigned Reg) { return Reg == X86::RSP || Reg == X86::ESP; } @@ -339,7 +339,7 @@ void X86AddressSanitizer::ComputeMemOperandAddress(X86Operand &Op, while (Residue != 0) { const MCConstantExpr *Disp = - MCConstantExpr::Create(ApplyBounds(Residue), Ctx); + MCConstantExpr::Create(ApplyDisplacementBounds(Residue), Ctx); std::unique_ptr DispOp = X86Operand::CreateMem(0, Disp, Reg, 0, 1, SMLoc(), SMLoc()); EmitLEA(*DispOp, VT, Reg, Out); @@ -362,11 +362,11 @@ X86AddressSanitizer::AddDisplacement(X86Operand &Op, int64_t Displacement, int64_t OrigDisplacement = static_cast(Op.getMemDisp())->getValue(); - assert(InBounds(OrigDisplacement)); + CheckDisplacementBounds(OrigDisplacement); Displacement += OrigDisplacement; - int64_t NewDisplacement = ApplyBounds(Displacement); - assert(InBounds(NewDisplacement)); + int64_t NewDisplacement = ApplyDisplacementBounds(Displacement); + CheckDisplacementBounds(NewDisplacement); *Residue = Displacement - NewDisplacement; const MCExpr *Disp = MCConstantExpr::Create(NewDisplacement, Ctx); -- 2.34.1