[llvm-commits] CVS: llvm/tools/llvm-upgrade/UpgradeLexer.l

Reid Spencer reid at x10sys.com
Wed Feb 7 16:19:56 PST 2007



Changes in directory llvm/tools/llvm-upgrade:

UpgradeLexer.l updated: 1.18 -> 1.19
---
Log message:

For PR1187: http://llvm.org/PR1187 :
Allow @ before identifer names. Recognize the i1, i8, i16, i32, i64 keywords
as type names corresponding to bool, ubyte, ushort, uint, and ulong
respectively. While these aren't LLVM 1.9 constructs, permitting the syntax
allows post-1.9 assembly files to be upgraded.


---
Diffs of the changes:  (+7 -2)

 UpgradeLexer.l |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)


Index: llvm/tools/llvm-upgrade/UpgradeLexer.l
diff -u llvm/tools/llvm-upgrade/UpgradeLexer.l:1.18 llvm/tools/llvm-upgrade/UpgradeLexer.l:1.19
--- llvm/tools/llvm-upgrade/UpgradeLexer.l:1.18	Thu Feb  1 20:16:22 2007
+++ llvm/tools/llvm-upgrade/UpgradeLexer.l	Wed Feb  7 18:19:40 2007
@@ -152,14 +152,14 @@
 Comment    ;.*
 
 /* Variable(Value) identifiers start with a % sign */
-VarID       %[-a-zA-Z$._][-a-zA-Z$._0-9]*
+VarID       [%@][-a-zA-Z$._][-a-zA-Z$._0-9]*
 
 /* Label identifiers end with a colon */
 Label       [-a-zA-Z$._0-9]+:
 QuoteLabel \"[^\"]+\":
 
 /* Quoted names can contain any character except " and \ */
-StringConstant \"[^\"]*\"
+StringConstant @?\"[^\"]*\"
 
 
 /* [PN]Integer: match positive and negative literal integer values that
@@ -240,14 +240,19 @@
 
 sbyte           { RET_TY(SBYTE,  Type::Int8Ty,  Signed);  }
 ubyte           { RET_TY(UBYTE,  Type::Int8Ty,  Unsigned); }
+i8              { RET_TY(UBYTE,  Type::Int8Ty,  Unsigned); }
 short           { RET_TY(SHORT,  Type::Int16Ty, Signed);  }
 ushort          { RET_TY(USHORT, Type::Int16Ty, Unsigned); }
+i16             { RET_TY(USHORT, Type::Int16Ty, Unsigned); }
 int             { RET_TY(INT,    Type::Int32Ty, Signed);  }
 uint            { RET_TY(UINT,   Type::Int32Ty, Unsigned); }
+i32             { RET_TY(UINT,   Type::Int32Ty, Unsigned); }
 long            { RET_TY(LONG,   Type::Int64Ty, Signed);  }
 ulong           { RET_TY(ULONG,  Type::Int64Ty, Unsigned); }
+i64             { RET_TY(ULONG,  Type::Int64Ty, Unsigned); }
 void            { RET_TY(VOID,   Type::VoidTy,  Signless  ); }
 bool            { RET_TY(BOOL,   Type::Int1Ty,  Unsigned  ); }
+i1              { RET_TY(BOOL,   Type::Int1Ty,  Unsigned  ); }
 float           { RET_TY(FLOAT,  Type::FloatTy, Signless ); }
 double          { RET_TY(DOUBLE, Type::DoubleTy,Signless); }
 label           { RET_TY(LABEL,  Type::LabelTy, Signless ); }






More information about the llvm-commits mailing list