| Index: src/IceRegList.h | 
| diff --git a/src/IceRegList.h b/src/IceRegList.h | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..4b21044212621ffb45d44730cafd020d5139cde0 | 
| --- /dev/null | 
| +++ b/src/IceRegList.h | 
| @@ -0,0 +1,35 @@ | 
| +//===- subzero/src/IceRegList.h - Register list macro defs  -----*- C++ -*-===// | 
| +// | 
| +//                        The Subzero Code Generator | 
| +// | 
| +// This file is distributed under the University of Illinois Open Source | 
| +// License. See LICENSE.TXT for details. | 
| +// | 
| +//===----------------------------------------------------------------------===// | 
| +// | 
| +// This file defines the REGLIST*() macros used in the IceInst*.def files. | 
| +// | 
| +//===----------------------------------------------------------------------===// | 
| + | 
| +#ifndef SUBZERO_SRC_ICEINSTREGLIST_H | 
| +#define SUBZERO_SRC_ICEINSTREGLIST_H | 
| + | 
| +// REGLISTn is a family of macros that we use to define register aliasing.  "n" | 
| +// indicates how many register aliases are being provided to the macro.  It | 
| +// assumes the parameters are register names declared in the "ns" | 
| +// namespace/class, but with the common "Reg_" prefix removed for brevity. | 
| +#define REGLIST1(ns, r0)                                                       \ | 
| +  { ns::Reg_##r0 } | 
| +#define REGLIST2(ns, r0, r1)                                                   \ | 
| +  { ns::Reg_##r0, ns::Reg_##r1 } | 
| +#define REGLIST3(ns, r0, r1, r2)                                               \ | 
| +  { ns::Reg_##r0, ns::Reg_##r1, ns::Reg_##r2 } | 
| +#define REGLIST4(ns, r0, r1, r2, r3)                                           \ | 
| +  { ns::Reg_##r0, ns::Reg_##r1, ns::Reg_##r2, ns::Reg_##r3 } | 
| +#define REGLIST6(ns, r0, r1, r2, r3, r4, r5)                                   \ | 
| +  {                                                                            \ | 
| +    ns::Reg_##r0, ns::Reg_##r1, ns::Reg_##r2, ns::Reg_##r3, ns::Reg_##r4,      \ | 
| +        ns::Reg_##r5                                                           \ | 
| +  } | 
| + | 
| +#endif // SUBZERO_SRC_ICEINSTREGLIST_H | 
|  |