Go to file
Reid Kleckner 324c99dee5 [IR] Make AttributeSetNode public, avoid temporary AttributeList copies
Summary:
AttributeList::get(Fn|Ret|Param)Attributes no longer creates a temporary
AttributeList just to hide the AttributeSetNode type.

I've also added a factory method to create AttributeLists from a
parallel array of AttributeSetNodes. I think this simplifies
construction of AttributeLists when rewriting function prototypes.
Previously we would test if a particular index had attributes, and
conditionally add a temporary attribute list to a vector. Now the
attribute set vector is parallel to the argument vector already that
these passes already construct.

My long term vision is to wrap AttributeSetNode* inside an AttributeSet
type that holds the enum attributes, but that will come in a follow up
change.

I haven't done any performance measurements for this change because
profiling hasn't shown that any of the affected code is hot.

Reviewers: pete, chandlerc, sanjoy, hfinkel

Reviewed By: pete

Subscribers: jfb, llvm-commits

Differential Revision: https://reviews.llvm.org/D31198

llvm-svn: 299875
2017-04-10 20:18:10 +00:00
clang [OPENMP] Fix for PR32333: Crash in call of outlined Function. 2017-04-10 19:16:45 +00:00
clang-tools-extra [clangd] Relax absolute path checking assertion 2017-04-10 17:03:44 +00:00
compiler-rt [Asan] Eliminate SHADOW_TO_MEM() macro 2017-04-10 19:13:47 +00:00
debuginfo-tests Add an end-to-end testcase for address sanitizer. 2017-04-06 23:36:44 +00:00
libclc math: Implement sinh function 2017-02-25 02:46:53 +00:00
libcxx Revert "Allow a standard library to implement conditional noexcept for optional and unique_ptr hash functions." 2017-04-07 05:55:28 +00:00
libcxxabi [CMake][libcxxabi] Use -nodefaultlibs for CMake checks 2017-04-07 20:10:41 +00:00
libunwind Revert "[CMake][libunwind] Use -nodefaultlibs for CMake checks" 2017-04-07 20:24:22 +00:00
lld [ELF] - Stop producing broken output for R_386_GOT32[X] relocations. 2017-04-08 06:14:14 +00:00
lldb [lldb] Fix ninja URL 2017-04-10 15:41:15 +00:00
llgo benchcomp: Add a mode for analyzing file sizes. 2017-04-03 19:13:12 +00:00
llvm [IR] Make AttributeSetNode public, avoid temporary AttributeList copies 2017-04-10 20:18:10 +00:00
openmp Test cancellation_for_sections.c expectedly fails on GCC 2017-04-04 14:39:52 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly Fix missing .git/indexloadPolly in ensure-correct-tile-sizes testcase 2017-04-07 12:55:26 +00:00