Change the syntax for parameter attributes:
authorReid Spencer <rspencer@reidspencer.com>
Fri, 5 Jan 2007 17:06:19 +0000 (17:06 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Fri, 5 Jan 2007 17:06:19 +0000 (17:06 +0000)
commit2c261789d3f6826b42a010b8ff0115519ba31525
treeb149c55e04bd0f8ddfc2833d3efa3ea79a30f152
parentbdcb9dfc3a20e12a40637431b342b0a0d3d26e1b
Change the syntax for parameter attributes:
1. The @ sign is no longer necessary.
2. We now support "function attributes" as parameter attribute 0.
3. Instead of locating the return type attributes after the type of a
   function result, they are now located after the function header's
   closing paranthesis and before any alignment or section options.
4. The way has been prepared for a new "noreturn" function attribute but
   there is no support for recognizing it in the lexer nor doing anything
   with it if it does get set.
5. The FunctionType::getParamAttrsText method now has support for
   returning multiple attributes. This required a change in its interface.

I'm unhappy that this change leads to 6 new shift/reduce conflicts, but
in each case bison's decision to choose the shift is correct so there
shouldn't be any damage from these conflicts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32904 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/DerivedTypes.h
lib/AsmParser/llvmAsmParser.y
lib/VMCore/AsmWriter.cpp
lib/VMCore/Type.cpp