aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/llvm/ParamAttrsList.h227
-rw-r--r--include/llvm/ParameterAttributes.h206
-rw-r--r--lib/AsmParser/llvmAsmParser.cpp.cvs607
-rw-r--r--lib/AsmParser/llvmAsmParser.h.cvs2
-rw-r--r--lib/AsmParser/llvmAsmParser.y1
-rw-r--r--lib/AsmParser/llvmAsmParser.y.cvs1
-rw-r--r--lib/Bitcode/Reader/BitcodeReader.cpp2
-rw-r--r--lib/Bitcode/Writer/BitcodeWriter.cpp2
-rw-r--r--lib/Target/CBackend/CBackend.cpp2
-rw-r--r--lib/Target/X86/X86ISelLowering.cpp2
-rw-r--r--lib/Transforms/IPO/ArgumentPromotion.cpp2
-rw-r--r--lib/Transforms/IPO/DeadArgumentElimination.cpp2
-rw-r--r--lib/Transforms/IPO/GlobalOpt.cpp2
-rw-r--r--lib/Transforms/IPO/PruneEH.cpp2
-rw-r--r--lib/Transforms/Scalar/InstructionCombining.cpp2
-rw-r--r--lib/VMCore/AsmWriter.cpp2
-rw-r--r--lib/VMCore/AutoUpgrade.cpp2
-rw-r--r--lib/VMCore/Function.cpp2
-rw-r--r--lib/VMCore/Instructions.cpp2
-rw-r--r--lib/VMCore/ParameterAttributes.cpp4
-rw-r--r--lib/VMCore/Verifier.cpp2
-rw-r--r--tools/llvm-upgrade/UpgradeParser.cpp.cvs468
-rw-r--r--tools/llvm-upgrade/UpgradeParser.h.cvs2
-rw-r--r--tools/llvm-upgrade/UpgradeParser.y2
-rw-r--r--tools/llvm-upgrade/UpgradeParser.y.cvs2
-rw-r--r--tools/llvm2cpp/CppWriter.cpp4
26 files changed, 791 insertions, 763 deletions
diff --git a/include/llvm/ParamAttrsList.h b/include/llvm/ParamAttrsList.h
new file mode 100644
index 0000000000..fca9046eaa
--- /dev/null
+++ b/include/llvm/ParamAttrsList.h
@@ -0,0 +1,227 @@
+//===-- llvm/ParamAttrsList.h - List and Vector of ParamAttrs ---*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This file contains classes used to represent the parameter attributes
+// associated with functions and their calls.
+//
+// The implementation of ParamAttrsList is in lib/VMCore/ParameterAttributes.cpp.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLVM_PARAM_ATTRS_LIST_H
+#define LLVM_PARAM_ATTRS_LIST_H
+
+#include "llvm/ADT/SmallVector.h"
+#include "llvm/ADT/FoldingSet.h"
+#include "llvm/ParameterAttributes.h"
+#include <cassert>
+
+namespace llvm {
+
+/// @brief A vector of attribute/index pairs.
+typedef SmallVector<ParamAttrsWithIndex,4> ParamAttrsVector;
+
+/// This class represents a list of attribute/index pairs for parameter
+/// attributes. Each entry in the list contains the index of a function
+/// parameter and the associated ParameterAttributes. If a parameter's index is
+/// not present in the list, then no attributes are set for that parameter. The
+/// list may also be empty, but this does not occur in practice. An item in
+/// the list with an index of 0 refers to the function as a whole or its result.
+/// To construct a ParamAttrsList, you must first fill a ParamAttrsVector with
+/// the attribute/index pairs you wish to set. The list of attributes can be
+/// turned into a string of mnemonics suitable for LLVM Assembly output.
+/// Various accessors are provided to obtain information about the attributes.
+/// Note that objects of this class are "uniqued". The \p get method can return
+/// the pointer of an existing and identical instance. Consequently, reference
+/// counting is necessary in order to determine when the last reference to a
+/// ParamAttrsList of a given shape is dropped. Users of this class should use
+/// the addRef and dropRef methods to add/drop references. When the reference
+/// count goes to zero, the ParamAttrsList object is deleted.
+/// This class is used by Function, CallInst and InvokeInst to represent their
+/// sets of parameter attributes.
+/// @brief A List of ParameterAttributes.
+class ParamAttrsList : public FoldingSetNode {
+ /// @name Construction
+ /// @{
+ private:
+ // ParamAttrsList is uniqued, these should not be publicly available
+ void operator=(const ParamAttrsList &); // Do not implement
+ ParamAttrsList(const ParamAttrsList &); // Do not implement
+ ~ParamAttrsList(); // Private implementation
+
+ /// Only the \p get method can invoke this when it wants to create a
+ /// new instance.
+ /// @brief Construct an ParamAttrsList from a ParamAttrsVector
+ explicit ParamAttrsList(const ParamAttrsVector &attrVec);
+
+ public:
+ /// This method ensures the uniqueness of ParamAttrsList instances. The
+ /// argument is a vector of attribute/index pairs as represented by the
+ /// ParamAttrsWithIndex structure. The index values must be in strictly
+ /// increasing order and ParamAttr::None is not allowed. The vector is
+ /// used to construct the ParamAttrsList instance. If an instance with
+ /// identical vector pairs exists, it will be returned instead of creating
+ /// a new instance.
+ /// @brief Get a ParamAttrsList instance.
+ static const ParamAttrsList *get(const ParamAttrsVector &attrVec);
+
+ /// Returns the ParamAttrsList obtained by modifying PAL using the supplied
+ /// list of attribute/index pairs. Any existing attributes for the given
+ /// index are replaced by the given attributes. If there were no attributes
+ /// then the new ones are inserted. Attributes can be deleted by replacing
+ /// them with ParamAttr::None. Index values must be strictly increasing.
+ /// @brief Get a new ParamAttrsList instance by modifying an existing one.
+ static const ParamAttrsList *getModified(const ParamAttrsList *PAL,
+ const ParamAttrsVector &modVec);
+
+ /// @brief Add the specified attributes to those in PAL at index idx.
+ static const ParamAttrsList *includeAttrs(const ParamAttrsList *PAL,
+ uint16_t idx,
+ ParameterAttributes attrs);
+
+ /// @brief Remove the specified attributes from those in PAL at index idx.
+ static const ParamAttrsList *excludeAttrs(const ParamAttrsList *PAL,
+ uint16_t idx,
+ ParameterAttributes attrs);
+
+ /// @}
+ /// @name Accessors
+ /// @{
+ public:
+ /// The parameter attributes for the \p indexth parameter are returned.
+ /// The 0th parameter refers to the return type of the function. Note that
+ /// the \p param_index is an index into the function's parameters, not an
+ /// index into this class's list of attributes. The result of getParamIndex
+ /// is always suitable input to this function.
+ /// @returns The all the ParameterAttributes for the \p indexth parameter
+ /// as a uint16_t of enumeration values OR'd together.
+ /// @brief Get the attributes for a parameter
+ ParameterAttributes getParamAttrs(uint16_t param_index) const;
+
+ /// This checks to see if the \p ith function parameter has the parameter
+ /// attribute given by \p attr set.
+ /// @returns true if the parameter attribute is set
+ /// @brief Determine if a ParameterAttributes is set
+ bool paramHasAttr(uint16_t i, ParameterAttributes attr) const {
+ return getParamAttrs(i) & attr;
+ }
+
+ /// This extracts the alignment for the \p ith function parameter.
+ /// @returns 0 if unknown, else the alignment in bytes
+ /// @brief Extract the Alignment
+ uint16_t getParamAlignment(uint16_t i) const {
+ return (getParamAttrs(i) & ParamAttr::Alignment) >> 16;
+ }
+
+ /// This returns whether the given attribute is set for at least one
+ /// parameter or for the return value.
+ /// @returns true if the parameter attribute is set somewhere
+ /// @brief Determine if a ParameterAttributes is set somewhere
+ bool hasAttrSomewhere(ParameterAttributes attr) const;
+
+ /// The set of ParameterAttributes set in Attributes is converted to a
+ /// string of equivalent mnemonics. This is, presumably, for writing out
+ /// the mnemonics for the assembly writer.
+ /// @brief Convert parameter attribute bits to text
+ static std::string getParamAttrsText(ParameterAttributes Attributes);
+
+ /// The \p Indexth parameter attribute is converted to string.
+ /// @brief Get the text for the parmeter attributes for one parameter.
+ std::string getParamAttrsTextByIndex(uint16_t Index) const {
+ return getParamAttrsText(getParamAttrs(Index));
+ }
+
+ /// @brief Comparison operator for ParamAttrsList
+ bool operator < (const ParamAttrsList& that) const {
+ if (this->attrs.size() < that.attrs.size())
+ return true;
+ if (this->attrs.size() > that.attrs.size())
+ return false;
+ for (unsigned i = 0; i < attrs.size(); ++i) {
+ if (attrs[i].index < that.attrs[i].index)
+ return true;
+ if (attrs[i].index > that.attrs[i].index)
+ return false;
+ if (attrs[i].attrs < that.attrs[i].attrs)
+ return true;
+ if (attrs[i].attrs > that.attrs[i].attrs)
+ return false;
+ }
+ return false;
+ }
+
+ /// Returns the parameter index of a particular parameter attribute in this
+ /// list of attributes. Note that the attr_index is an index into this
+ /// class's list of attributes, not the index of a parameter. The result
+ /// is the index of the parameter. Clients generally should not use this
+ /// method. It is used internally by LLVM.
+ /// @brief Get a parameter index
+ uint16_t getParamIndex(unsigned attr_index) const {
+ return attrs[attr_index].index;
+ }
+
+ ParameterAttributes getParamAttrsAtIndex(unsigned attr_index) const {
+ return attrs[attr_index].attrs;
+ }
+
+ /// Determines how many parameter attributes are set in this ParamAttrsList.
+ /// This says nothing about how many parameters the function has. It also
+ /// says nothing about the highest parameter index that has attributes.
+ /// Clients generally should not use this method. It is used internally by
+ /// LLVM.
+ /// @returns the number of parameter attributes in this ParamAttrsList.
+ /// @brief Return the number of parameter attributes this type has.
+ unsigned size() const { return attrs.size(); }
+
+ /// @brief Return the number of references to this ParamAttrsList.
+ unsigned numRefs() const { return refCount; }
+
+ /// @}
+ /// @name Mutators
+ /// @{
+ public:
+ /// Classes retaining references to ParamAttrsList objects should call this
+ /// method to increment the reference count. This ensures that the
+ /// ParamAttrsList object will not disappear until the class drops it.
+ /// @brief Add a reference to this instance.
+ void addRef() const { refCount++; }
+
+ /// Classes retaining references to ParamAttrsList objects should call this
+ /// method to decrement the reference count and possibly delete the
+ /// ParamAttrsList object. This ensures that ParamAttrsList objects are
+ /// cleaned up only when the last reference to them is dropped.
+ /// @brief Drop a reference to this instance.
+ void dropRef() const {
+ assert(refCount != 0 && "dropRef without addRef");
+ if (--refCount == 0)
+ delete this;
+ }
+
+ /// @}
+ /// @name Implementation Details
+ /// @{
+ public:
+ void Profile(FoldingSetNodeID &ID) const {
+ Profile(ID, attrs);
+ }
+ static void Profile(FoldingSetNodeID &ID, const ParamAttrsVector &Attrs);
+ void dump() const;
+
+ /// @}
+ /// @name Data
+ /// @{
+ private:
+ ParamAttrsVector attrs; ///< The list of attributes
+ mutable unsigned refCount; ///< The number of references to this object
+ /// @}
+};
+
+} // End llvm namespace
+
+#endif
diff --git a/include/llvm/ParameterAttributes.h b/include/llvm/ParameterAttributes.h
index 33cc95c95d..5cff0443de 100644
--- a/include/llvm/ParameterAttributes.h
+++ b/include/llvm/ParameterAttributes.h
@@ -7,18 +7,14 @@
//
//===----------------------------------------------------------------------===//
//
-// This file contains the types necessary to represent the parameter attributes
-// associated with functions and their calls.
-//
-// The implementations of these classes live in lib/VMCore/Function.cpp.
+// This file contains the simple types necessary to represent the parameter
+// attributes associated with functions and their calls.
//
//===----------------------------------------------------------------------===//
#ifndef LLVM_PARAMETER_ATTRIBUTES_H
#define LLVM_PARAMETER_ATTRIBUTES_H
-#include "llvm/ADT/SmallVector.h"
-#include "llvm/ADT/FoldingSet.h"
#include <cassert>
namespace llvm {
@@ -95,204 +91,6 @@ struct ParamAttrsWithIndex {
}
};
-/// @brief A vector of attribute/index pairs.
-typedef SmallVector<ParamAttrsWithIndex,4> ParamAttrsVector;
-
-/// This class represents a list of attribute/index pairs for parameter
-/// attributes. Each entry in the list contains the index of a function
-/// parameter and the associated ParameterAttributes. If a parameter's index is
-/// not present in the list, then no attributes are set for that parameter. The
-/// list may also be empty, but this does not occur in practice. An item in
-/// the list with an index of 0 refers to the function as a whole or its result.
-/// To construct a ParamAttrsList, you must first fill a ParamAttrsVector with
-/// the attribute/index pairs you wish to set. The list of attributes can be
-/// turned into a string of mnemonics suitable for LLVM Assembly output.
-/// Various accessors are provided to obtain information about the attributes.
-/// Note that objects of this class are "uniqued". The \p get method can return
-/// the pointer of an existing and identical instance. Consequently, reference
-/// counting is necessary in order to determine when the last reference to a
-/// ParamAttrsList of a given shape is dropped. Users of this class should use
-/// the addRef and dropRef methods to add/drop references. When the reference
-/// count goes to zero, the ParamAttrsList object is deleted.
-/// This class is used by Function, CallInst and InvokeInst to represent their
-/// sets of parameter attributes.
-/// @brief A List of ParameterAttributes.
-class ParamAttrsList : public FoldingSetNode {
- /// @name Construction
- /// @{
- private:
- // ParamAttrsList is uniqued, these should not be publicly available
- void operator=(const ParamAttrsList &); // Do not implement
- ParamAttrsList(const ParamAttrsList &); // Do not implement
- ~ParamAttrsList(); // Private implementation
-
- /// Only the \p get method can invoke this when it wants to create a
- /// new instance.
- /// @brief Construct an ParamAttrsList from a ParamAttrsVector
- explicit ParamAttrsList(const ParamAttrsVector &attrVec);
-
- public:
- /// This method ensures the uniqueness of ParamAttrsList instances. The
- /// argument is a vector of attribute/index pairs as represented by the
- /// ParamAttrsWithIndex structure. The index values must be in strictly
- /// increasing order and ParamAttr::None is not allowed. The vector is
- /// used to construct the ParamAttrsList instance. If an instance with
- /// identical vector pairs exists, it will be returned instead of creating
- /// a new instance.
- /// @brief Get a ParamAttrsList instance.
- static const ParamAttrsList *get(const ParamAttrsVector &attrVec);
-
- /// Returns the ParamAttrsList obtained by modifying PAL using the supplied
- /// list of attribute/index pairs. Any existing attributes for the given
- /// index are replaced by the given attributes. If there were no attributes
- /// then the new ones are inserted. Attributes can be deleted by replacing
- /// them with ParamAttr::None. Index values must be strictly increasing.
- /// @brief Get a new ParamAttrsList instance by modifying an existing one.
- static const ParamAttrsList *getModified(const ParamAttrsList *PAL,
- const ParamAttrsVector &modVec);
-
- /// @brief Add the specified attributes to those in PAL at index idx.
- static const ParamAttrsList *includeAttrs(const ParamAttrsList *PAL,
- uint16_t idx,
- ParameterAttributes attrs);
-
- /// @brief Remove the specified attributes from those in PAL at index idx.
- static const ParamAttrsList *excludeAttrs(const ParamAttrsList *PAL,
- uint16_t idx,
- ParameterAttributes attrs);
-
- /// @}
- /// @name Accessors
- /// @{
- public:
- /// The parameter attributes for the \p indexth parameter are returned.
- /// The 0th parameter refers to the return type of the function. Note that
- /// the \p param_index is an index into the function's parameters, not an
- /// index into this class's list of attributes. The result of getParamIndex
- /// is always suitable input to this function.
- /// @returns The all the ParameterAttributes for the \p indexth parameter
- /// as a uint16_t of enumeration values OR'd together.
- /// @brief Get the attributes for a parameter
- ParameterAttributes getParamAttrs(uint16_t param_index) const;
-
- /// This checks to see if the \p ith function parameter has the parameter
- /// attribute given by \p attr set.
- /// @returns true if the parameter attribute is set
- /// @brief Determine if a ParameterAttributes is set
- bool paramHasAttr(uint16_t i, ParameterAttributes attr) const {
- return getParamAttrs(i) & attr;
- }
-
- /// This extracts the alignment for the \p ith function parameter.
- /// @returns 0 if unknown, else the alignment in bytes
- /// @brief Extract the Alignment
- uint16_t getParamAlignment(uint16_t i) const {
- return (getParamAttrs(i) & ParamAttr::Alignment) >> 16;
- }
-
- /// This returns whether the given attribute is set for at least one
- /// parameter or for the return value.
- /// @returns true if the parameter attribute is set somewhere
- /// @brief Determine if a ParameterAttributes is set somewhere
- bool hasAttrSomewhere(ParameterAttributes attr) const;
-
- /// The set of ParameterAttributes set in Attributes is converted to a
- /// string of equivalent mnemonics. This is, presumably, for writing out
- /// the mnemonics for the assembly writer.
- /// @brief Convert parameter attribute bits to text
- static std::string getParamAttrsText(ParameterAttributes Attributes);
-
- /// The \p Indexth parameter attribute is converted to string.
- /// @brief Get the text for the parmeter attributes for one parameter.
- std::string getParamAttrsTextByIndex(uint16_t Index) const {
- return getParamAttrsText(getParamAttrs(Index));
- }
-
- /// @brief Comparison operator for ParamAttrsList
- bool operator < (const ParamAttrsList& that) const {
- if (this->attrs.size() < that.attrs.size())
- return true;
- if (this->attrs.size() > that.attrs.size())
- return false;
- for (unsigned i = 0; i < attrs.size(); ++i) {
- if (attrs[i].index < that.attrs[i].index)
- return true;
- if (attrs[i].index > that.attrs[i].index)
- return false;
- if (attrs[i].attrs < that.attrs[i].attrs)
- return true;
- if (attrs[i].attrs > that.attrs[i].attrs)
- return false;
- }
- return false;
- }
-
- /// Returns the parameter index of a particular parameter attribute in this
- /// list of attributes. Note that the attr_index is an index into this
- /// class's list of attributes, not the index of a parameter. The result
- /// is the index of the parameter. Clients generally should not use this
- /// method. It is used internally by LLVM.
- /// @brief Get a parameter index
- uint16_t getParamIndex(unsigned attr_index) const {
- return attrs[attr_index].index;
- }
-
- ParameterAttributes getParamAttrsAtIndex(unsigned attr_index) const {
- return attrs[attr_index].attrs;
- }
-
- /// Determines how many parameter attributes are set in this ParamAttrsList.
- /// This says nothing about how many parameters the function has. It also
- /// says nothing about the highest parameter index that has attributes.
- /// Clients generally should not use this method. It is used internally by
- /// LLVM.
- /// @returns the number of parameter attributes in this ParamAttrsList.
- /// @brief Return the number of parameter attributes this type has.
- unsigned size() const { return attrs.size(); }
-
- /// @brief Return the number of references to this ParamAttrsList.
- unsigned numRefs() const { return refCount; }
-
- /// @}
- /// @name Mutators
- /// @{
- public:
- /// Classes retaining references to ParamAttrsList objects should call this
- /// method to increment the reference count. This ensures that the
- /// ParamAttrsList object will not disappear until the class drops it.
- /// @brief Add a reference to this instance.
- void addRef() const { refCount++; }
-
- /// Classes retaining references to ParamAttrsList objects should call this
- /// method to decrement the reference count and possibly delete the
- /// ParamAttrsList object. This ensures that ParamAttrsList objects are
- /// cleaned up only when the last reference to them is dropped.
- /// @brief Drop a reference to this instance.
- void dropRef() const {
- assert(refCount != 0 && "dropRef without addRef");
- if (--refCount == 0)
- delete this;
- }
-
- /// @}
- /// @name Implementation Details
- /// @{
- public:
- void Profile(FoldingSetNodeID &ID) const {
- Profile(ID, attrs);
- }
- static void Profile(FoldingSetNodeID &ID, const ParamAttrsVector &Attrs);
- void dump() const;
-
- /// @}
- /// @name Data
- /// @{
- private:
- ParamAttrsVector attrs; ///< The list of attributes
- mutable unsigned refCount; ///< The number of references to this object
- /// @}
-};
-
} // End llvm namespace
#endif
diff --git a/lib/AsmParser/llvmAsmParser.cpp.cvs b/lib/AsmParser/llvmAsmParser.cpp.cvs
index 72c53c224d..5b53c55868 100644
--- a/lib/AsmParser/llvmAsmParser.cpp.cvs
+++ b/lib/AsmParser/llvmAsmParser.cpp.cvs
@@ -378,7 +378,7 @@
/* Copy the first part of user declarations. */
-#line 14 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 14 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
#include "ParserInternals.h"
#include "llvm/CallingConv.h"
@@ -393,6 +393,7 @@
#include "llvm/ADT/STLExtras.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/Streams.h"
+#include "llvm/ParamAttrsList.h"
#include <algorithm>
#include <list>
#include <map>
@@ -1337,7 +1338,7 @@ Module *llvm::RunVMAsmParser(llvm::MemoryBuffer *MB) {
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
typedef union YYSTYPE
-#line 952 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 953 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{
llvm::Module *ModuleVal;
llvm::Function *FunctionVal;
@@ -1385,7 +1386,7 @@ typedef union YYSTYPE
llvm::FCmpInst::Predicate FPredicate;
}
/* Line 193 of yacc.c. */
-#line 1389 "llvmAsmParser.tab.c"
+#line 1390 "llvmAsmParser.tab.c"
YYSTYPE;
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
@@ -1398,7 +1399,7 @@ typedef union YYSTYPE
/* Line 216 of yacc.c. */
-#line 1402 "llvmAsmParser.tab.c"
+#line 1403 "llvmAsmParser.tab.c"
#ifdef short
# undef short
@@ -1827,39 +1828,39 @@ static const yytype_int16 yyrhs[] =
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114,
- 1114, 1115, 1115, 1115, 1115, 1115, 1115, 1116, 1116, 1116,
- 1116, 1116, 1116, 1117, 1117, 1117, 1117, 1117, 1117, 1120,
- 1120, 1121, 1121, 1122, 1122, 1123, 1123, 1124, 1124, 1128,
- 1128, 1129, 1129, 1130, 1130, 1131, 1131, 1132, 1132, 1133,
- 1133, 1134, 1134, 1135, 1136, 1141, 1142, 1142, 1142, 1142,
- 1142, 1144, 1144, 1144, 1145, 1145, 1147, 1148, 1152, 1156,
- 1161, 1161, 1163, 1164, 1169, 1175, 1176, 1177, 1178, 1179,
- 1183, 1184, 1185, 1189, 1190, 1191, 1192, 1196, 1197, 1198,
- 1202, 1203, 1204, 1205, 1206, 1210, 1211, 1212, 1215, 1216,
- 1217, 1218, 1219, 1220, 1221, 1228, 1229, 1230, 1231, 1232,
- 1233, 1234, 1235, 1236, 1237, 1241, 1242, 1247, 1248, 1249,
- 1250, 1251, 1252, 1255, 1256, 1261, 1262, 1269, 1270, 1276,
- 1277, 1286, 1294, 1295, 1300, 1301, 1302, 1307, 1320, 1320,
- 1320, 1320, 1320, 1320, 1320, 1323, 1327, 1331, 1338, 1343,
- 1351, 1381, 1406, 1411, 1421, 1431, 1435, 1445, 1452, 1461,
- 1468, 1473, 1478, 1485, 1486, 1493, 1500, 1508, 1514, 1526,
- 1554, 1570, 1597, 1625, 1651, 1671, 1697, 1717, 1729, 1736,
- 1802, 1812, 1822, 1828, 1838, 1844, 1854, 1859, 1864, 1877,
- 1889, 1911, 1919, 1925, 1936, 1941, 1946, 1952, 1958, 1967,
- 1971, 1979, 1979, 1982, 1982, 1985, 1997, 2018, 2023, 2031,
- 2032, 2036, 2036, 2040, 2040, 2043, 2046, 2070, 2082, 2081,
- 2093, 2092, 2102, 2101, 2112, 2152, 2155, 2161, 2171, 2175,
- 2180, 2182, 2187, 2192, 2201, 2211, 2222, 2226, 2235, 2244,
- 2249, 2383, 2383, 2385, 2394, 2394, 2396, 2401, 2413, 2417,
- 2422, 2426, 2430, 2434, 2438, 2442, 2446, 2450, 2454, 2479,
- 2483, 2493, 2497, 2501, 2506, 2513, 2513, 2519, 2528, 2533,
- 2538, 2542, 2551, 2560, 2569, 2573, 2581, 2607, 2611, 2616,
- 2626, 2645, 2654, 2745, 2749, 2756, 2767, 2780, 2790, 2801,
- 2811, 2822, 2830, 2840, 2847, 2850, 2851, 2858, 2862, 2867,
- 2883, 2900, 2914, 2928, 2940, 2948, 2955, 2961, 2967, 2973,
- 2988, 3086, 3091, 3095, 3102, 3109, 3117, 3124, 3132, 3140,
- 3154, 3171, 3178
+ 0, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115,
+ 1115, 1116, 1116, 1116, 1116, 1116, 1116, 1117, 1117, 1117,
+ 1117, 1117, 1117, 1118, 1118, 1118, 1118, 1118, 1118, 1121,
+ 1121, 1122, 1122, 1123, 1123, 1124, 1124, 1125, 1125, 1129,
+ 1129, 1130, 1130, 1131, 1131, 1132, 1132, 1133, 1133, 1134,
+ 1134, 1135, 1135, 1136, 1137, 1142, 1143, 1143, 1143, 1143,
+ 1143, 1145, 1145, 1145, 1146, 1146, 1148, 1149, 1153, 1157,
+ 1162, 1162, 1164, 1165, 1170, 1176, 1177, 1178, 1179, 1180,
+ 1184, 1185, 1186, 1190, 1191, 1192, 1193, 1197, 1198, 1199,
+ 1203, 1204, 1205, 1206, 1207, 1211, 1212, 1213, 1216, 1217,
+ 1218, 1219, 1220, 1221, 1222, 1229, 1230, 1231, 1232, 1233,
+ 1234, 1235, 1236, 1237, 1238, 1242, 1243, 1248, 1249, 1250,
+ 1251, 1252, 1253, 1256, 1257, 1262, 1263, 1270, 1271, 1277,
+ 1278, 1287, 1295, 1296, 1301, 1302, 1303, 1308, 1321, 1321,
+ 1321, 1321, 1321, 1321, 1321, 1324, 1328, 1332, 1339, 1344,
+ 1352, 1382, 1407, 1412, 1422, 1432, 1436, 1446, 1453, 1462,
+ 1469, 1474, 1479, 1486, 1487, 1494, 1501, 1509, 1515, 1527,
+ 1555, 1571, 1598, 1626, 1652, 1672, 1698, 1718, 1730, 1737,
+ 1803, 1813, 1823, 1829, 1839, 1845, 1855, 1860, 1865, 1878,
+ 1890, 1912, 1920, 1926, 1937, 1942, 1947, 1953, 1959, 1968,
+ 1972, 1980, 1980, 1983, 1983, 1986, 1998, 2019, 2024, 2032,
+ 2033, 2037, 2037, 2041, 2041, 2044, 2047, 2071, 2083, 2082,
+ 2094, 2093, 2103, 2102, 2113, 2153, 2156, 2162, 2172, 2176,
+ 2181, 2183, 2188, 2193, 2202, 2212, 2223, 2227, 2236, 2245,
+ 2250, 2384, 2384, 2386, 2395, 2395, 2397, 2402, 2414, 2418,
+ 2423, 2427, 2431, 2435, 2439, 2443, 2447, 2451, 2455, 2480,
+ 2484, 2494, 2498, 2502, 2507, 2514, 2514, 2520, 2529, 2534,
+ 2539, 2543, 2552, 2561, 2570, 2574, 2582, 2608, 2612, 2617,
+ 2627, 2646, 2655, 2746, 2750, 2757, 2768, 2781, 2791, 2802,
+ 2812, 2823, 2831, 2841, 2848, 2851, 2852, 2859, 2863, 2868,
+ 2884, 2901, 2915, 2929, 2941, 2949, 2956, 2962, 2968, 2974,
+ 2989, 3087, 3092, 3096, 3103, 3110, 3118, 3125, 3133, 3141,
+ 3155, 3172, 3179
};
#endif
@@ -3473,152 +3474,152 @@ yyreduce:
switch (yyn)
{
case 29:
-#line 1120 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1121 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_EQ; ;}
break;
case 30:
-#line 1120 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1121 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_NE; ;}
break;
case 31:
-#line 1121 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1122 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_SLT; ;}
break;
case 32:
-#line 1121 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1122 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_SGT; ;}
break;
case 33:
-#line 1122 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1123 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_SLE; ;}
break;
case 34:
-#line 1122 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1123 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_SGE; ;}
break;
case 35:
-#line 1123 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1124 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_ULT; ;}
break;
case 36:
-#line 1123 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1124 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_UGT; ;}
break;
case 37:
-#line 1124 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1125 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_ULE; ;}
break;
case 38:
-#line 1124 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1125 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_UGE; ;}
break;
case 39:
-#line 1128 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1129 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_OEQ; ;}
break;
case 40:
-#line 1128 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1129 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_ONE; ;}
break;
case 41:
-#line 1129 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1130 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_OLT; ;}
break;
case 42:
-#line 1129 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1130 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_OGT; ;}
break;
case 43:
-#line 1130 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1131 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_OLE; ;}
break;
case 44:
-#line 1130 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1131 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_OGE; ;}
break;
case 45:
-#line 1131 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1132 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_ORD; ;}
break;
case 46:
-#line 1131 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1132 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_UNO; ;}
break;
case 47:
-#line 1132 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1133 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_UEQ; ;}
break;
case 48:
-#line 1132 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1133 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_UNE; ;}
break;
case 49:
-#line 1133 "/Volumes/Nanpura/mrv/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1134 "/Volumes/MacOS9/gcc/