Ramkumar Ramachandra 0608cec657 InstCombine: propagate deref via new addDereferenceableAttr
The "dereferenceable" attribute cannot be added via .addAttribute(),
since it also expects a size in bytes. AttrBuilder#addAttribute or
AttributeSet#addAttribute is wrapped by classes Function, InvokeInst,
and CallInst. Add corresponding wrappers to
AttrBuilder#addDereferenceableAttr.

Having done this, propagate the dereferenceable attribute via
gc.relocate, adding a test to exercise it. Note that -datalayout is
required during execution over and above -instcombine, because
InstCombine only optionally requires DataLayoutPass.

Differential Revision: http://reviews.llvm.org/D7510

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229265 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-14 19:37:54 +00:00
..
2014-07-18 15:51:28 +00:00
2014-06-27 18:19:56 +00:00
2014-06-27 18:19:56 +00:00
2014-11-05 01:36:22 +00:00
2014-12-09 18:38:53 +00:00
2015-01-24 17:51:26 +00:00
2015-01-06 23:00:37 +00:00
2014-12-09 18:38:53 +00:00
2014-11-24 20:44:36 +00:00
2014-12-09 18:38:53 +00:00
2014-04-29 13:21:05 +00:00