[WIP] Sketching IR and parsing support for affine maps, affine expressions
Run test case:
$ mlir-opt test/IR/parser-affine-map.mlir
test/IR/parser-affine-map.mlir:3:30: error: expect '(' at start of map range
#hello_world2 (i, j) [s0] -> i+s0, j)
^
PiperOrigin-RevId: 202736856
diff --git a/lib/Parser/Lexer.cpp b/lib/Parser/Lexer.cpp
index e3e5e9e..17755e0 100644
--- a/lib/Parser/Lexer.cpp
+++ b/lib/Parser/Lexer.cpp
@@ -78,9 +78,14 @@
case ')': return formToken(Token::r_paren, tokStart);
case '{': return formToken(Token::l_brace, tokStart);
case '}': return formToken(Token::r_brace, tokStart);
+ case '[': return formToken(Token::l_bracket, tokStart);
+ case ']': return formToken(Token::r_bracket, tokStart);
case '<': return formToken(Token::less, tokStart);
case '>': return formToken(Token::greater, tokStart);
+ case '=': return formToken(Token::equal, tokStart);
+ case '+': return formToken(Token::plus, tokStart);
+ case '*': return formToken(Token::star, tokStart);
case '-':
if (*curPtr == '>') {
++curPtr;
@@ -246,3 +251,4 @@
}
}
}
+