[llvm-commits] [llvm] r169791 - in /llvm/trunk: include/llvm/Target/ lib/CodeGen/SelectionDAG/ lib/Target/ARM/ lib/Target/Mips/ lib/Target/X86/ test/CodeGen/ARM/ test/CodeGen/X86/

Chris Lattner clattner at apple.com
Wed Dec 12 17:53:54 PST 2012


On Dec 10, 2012, at 3:21 PM, Evan Cheng <evan.cheng at apple.com> wrote:
> Author: evancheng
> Date: Mon Dec 10 17:21:26 2012
> New Revision: 169791
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=169791&view=rev
> Log:
> Some enhancements for memcpy / memset inline expansion.

Very cool.

> +  virtual bool isIntImmLegal(const APInt &/*Imm*/, EVT /*VT*/) const {
> +    return true;
> +  }

> -  virtual bool allowsUnalignedMemoryAccesses(EVT) const {
> +  virtual bool allowsUnalignedMemoryAccesses(EVT, bool *Fast = 0) const {
>     return false;
>   }

I know that these shifted around a bit in subsequent patches, but can they take MVTs?  Targets should only have to implement the hooks for legal VTs, not arbitrary LLVM IR types, right?

-Chris



More information about the llvm-commits mailing list