* Merge get_GVInitializer and getCharArrayLength into a single function
authorReid Spencer <rspencer@reidspencer.com>
Tue, 26 Apr 2005 07:45:18 +0000 (07:45 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Tue, 26 Apr 2005 07:45:18 +0000 (07:45 +0000)
commit20754ac069f19dca5837fc43c0488a4dae224f7b
tree23b68890c7d11f10e8827e8f95a7d308c1a81dae
parent4ac0f21f7a6ffb5b2ce4509a8d1c437f8ee47301
* Merge get_GVInitializer and getCharArrayLength into a single function
  named getConstantStringLength. This is the common part of StrCpy and
  StrLen optimizations and probably several others, yet to be written. It
  performs all the validity checks for looking at constant arrays that are
  supposed to be null-terminated strings and then computes the actual
  length of the string.
* Implement the MemCpyOptimization class. This just turns memcpy of 1, 2, 4
  and 8 byte data blocks that are properly aligned on those boundaries into
  a load and a store. Much more could be done here but alignment
  restrictions and lack of knowledge of the target instruction set prevent
  use from doing significantly more. That will have to be delegated to the
  code generators as they lower llvm.memcpy calls.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21562 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/IPO/SimplifyLibCalls.cpp