comparison src/share/vm/adlc/adlparse.cpp @ 12323:c9ccd7b85f20

8024924: Intrinsify java.lang.Math.addExact Reviewed-by: kvn, twisti
author rbackman
date Fri, 27 Sep 2013 08:39:19 +0200
parents 39901f2f1abe
children de6a9e811145 044b28168e20
comparison
equal deleted inserted replaced
12322:72b7e96c1922 12323:c9ccd7b85f20
3393 char *not_equal; 3393 char *not_equal;
3394 char *less; 3394 char *less;
3395 char *greater_equal; 3395 char *greater_equal;
3396 char *less_equal; 3396 char *less_equal;
3397 char *greater; 3397 char *greater;
3398 char *overflow;
3399 char *no_overflow;
3398 const char *equal_format = "eq"; 3400 const char *equal_format = "eq";
3399 const char *not_equal_format = "ne"; 3401 const char *not_equal_format = "ne";
3400 const char *less_format = "lt"; 3402 const char *less_format = "lt";
3401 const char *greater_equal_format = "ge"; 3403 const char *greater_equal_format = "ge";
3402 const char *less_equal_format = "le"; 3404 const char *less_equal_format = "le";
3403 const char *greater_format = "gt"; 3405 const char *greater_format = "gt";
3406 const char *overflow_format = "o";
3407 const char *no_overflow_format = "no";
3404 3408
3405 if (_curchar != '%') { 3409 if (_curchar != '%') {
3406 parse_err(SYNERR, "Missing '%%{' for 'cond_interface' block.\n"); 3410 parse_err(SYNERR, "Missing '%%{' for 'cond_interface' block.\n");
3407 return NULL; 3411 return NULL;
3408 } 3412 }
3434 else if ( strcmp(field,"less_equal") == 0 ) { 3438 else if ( strcmp(field,"less_equal") == 0 ) {
3435 less_equal = interface_field_parse(&less_equal_format); 3439 less_equal = interface_field_parse(&less_equal_format);
3436 } 3440 }
3437 else if ( strcmp(field,"greater") == 0 ) { 3441 else if ( strcmp(field,"greater") == 0 ) {
3438 greater = interface_field_parse(&greater_format); 3442 greater = interface_field_parse(&greater_format);
3443 }
3444 else if ( strcmp(field,"overflow") == 0 ) {
3445 overflow = interface_field_parse(&overflow_format);
3446 }
3447 else if ( strcmp(field,"no_overflow") == 0 ) {
3448 no_overflow = interface_field_parse(&no_overflow_format);
3439 } 3449 }
3440 else { 3450 else {
3441 parse_err(SYNERR, "Expected keyword, base|index|scale|disp, or '%%}' ending interface.\n"); 3451 parse_err(SYNERR, "Expected keyword, base|index|scale|disp, or '%%}' ending interface.\n");
3442 return NULL; 3452 return NULL;
3443 } 3453 }
3453 Interface *inter = new CondInterface(equal, equal_format, 3463 Interface *inter = new CondInterface(equal, equal_format,
3454 not_equal, not_equal_format, 3464 not_equal, not_equal_format,
3455 less, less_format, 3465 less, less_format,
3456 greater_equal, greater_equal_format, 3466 greater_equal, greater_equal_format,
3457 less_equal, less_equal_format, 3467 less_equal, less_equal_format,
3458 greater, greater_format); 3468 greater, greater_format,
3469 overflow, overflow_format,
3470 no_overflow, no_overflow_format);
3459 return inter; 3471 return inter;
3460 } 3472 }
3461 3473
3462 3474
3463 //------------------------------interface_field_parse-------------------------- 3475 //------------------------------interface_field_parse--------------------------