]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gimplefe: expose MULT_HIGHPART_EXPR
authorAlexander Monakov <amonakov@ispras.ru>
Thu, 30 Aug 2018 13:47:59 +0000 (16:47 +0300)
committerAlexander Monakov <amonakov@gcc.gnu.org>
Thu, 30 Aug 2018 13:47:59 +0000 (16:47 +0300)
* gimple-parser.c (c_parser_gimple_binary_expression): Accept infix
"__MULT_HIGHPART" for MULT_HIGHPART_EXPR.

From-SVN: r263982

gcc/c/ChangeLog
gcc/c/gimple-parser.c

index 14be5d219d49d9cb9cbe089f75773b51145097f0..51b706c6231e236ccf28e17f50296ffb283e9da6 100644 (file)
@@ -1,3 +1,8 @@
+2018-08-30  Alexander Monakov  <amonakov@ispras.ru>
+
+       * gimple-parser.c (c_parser_gimple_binary_expression): Accept infix
+       "__MULT_HIGHPART" for MULT_HIGHPART_EXPR.
+
 2018-08-27  David Malcolm  <dmalcolm@redhat.com>
 
        PR 87091
index 1be5d14dc2dbe41928722e6650e0fcbecc602363..ee2146f8a26d470926e9c88b8bc527cca662fb30 100644 (file)
@@ -450,6 +450,7 @@ c_parser_gimple_statement (c_parser *parser, gimple_seq *seq)
 
    gimple-binary-expression:
      gimple-unary-expression * gimple-unary-expression
+     gimple-unary-expression __MULT_HIGHPART gimple-unary-expression
      gimple-unary-expression / gimple-unary-expression
      gimple-unary-expression % gimple-unary-expression
      gimple-unary-expression + gimple-unary-expression
@@ -544,6 +545,16 @@ c_parser_gimple_binary_expression (c_parser *parser)
     case CPP_OR_OR:
       c_parser_error (parser, "%<||%> not valid in GIMPLE");
       return ret;
+    case CPP_NAME:
+       {
+         tree id = c_parser_peek_token (parser)->value;
+         if (strcmp (IDENTIFIER_POINTER (id), "__MULT_HIGHPART") == 0)
+           {
+             code = MULT_HIGHPART_EXPR;
+             break;
+           }
+       }
+      /* Fallthru.  */
     default:
       /* Not a binary expression.  */
       return lhs;