OSDN Git Service

Update malloc call creation code (AllocType is now the element type of the malloc...
authorVictor Hernandez <vhernandez@apple.com>
Fri, 18 Sep 2009 19:20:02 +0000 (19:20 +0000)
committerVictor Hernandez <vhernandez@apple.com>
Fri, 18 Sep 2009 19:20:02 +0000 (19:20 +0000)
commit88d9839d07a6b5a03484d664913de0f2b33d3bff
tree67e7dc39ea2679b1d969d34e5d08ea176aa7d569
parent6ba2e87061bad9a24c75db69ab9b80bb6e16d96b
Update malloc call creation code (AllocType is now the element type of the malloc, not the resulting type).

In getMallocArraySize(), fix bug in the case that array size is the product of 2 constants.

Extend isArrayMalloc() and getMallocArraySize() to handle case where malloc is used as char array.

Ensure that ArraySize in LowerAllocations::runOnBasicBlock() is correct type.

Extend Instruction::isSafeToSpeculativelyExecute() to handle malloc calls.

Add verification for malloc calls.

Reviewed by Dan Gohman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82257 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Analysis/MallocHelper.h
include/llvm/Instructions.h
lib/Analysis/MallocHelper.cpp
lib/Transforms/Utils/LowerAllocations.cpp
lib/VMCore/Instruction.cpp
lib/VMCore/Instructions.cpp
lib/VMCore/Verifier.cpp