Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Unified Diff: gdb/m2-exp.c

Issue 11969036: Merge GDB 7.5.1 (Closed) Base URL: http://git.chromium.org/native_client/nacl-gdb.git@master
Patch Set: Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « gdb/lm32-tdep.c ('k') | gdb/m2-exp.y » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gdb/m2-exp.c
diff --git a/gdb/m2-exp.c b/gdb/m2-exp.c
index 1e3f97ae258cef5d4415fd4b881d5e2c6743da50..3b7fd5fbd1992d90863a4627e2f18c683f77d700 100644
--- a/gdb/m2-exp.c
+++ b/gdb/m2-exp.c
@@ -219,6 +219,12 @@
#define yygindex m2_yygindex
#define yytable m2_yytable
#define yycheck m2_yycheck
+#define yyss m2_yyss
+#define yysslim m2_yysslim
+#define yyssp m2_yyssp
+#define yystacksize m2_yystacksize
+#define yyvs m2_yyvs
+#define yyvsp m2_yyvsp
#ifndef YYDEBUG
#define YYDEBUG 1 /* Default to yydebug support */
@@ -232,21 +238,11 @@ static int yylex (void);
void yyerror (char *);
-#if 0
-static char *make_qualname (char *, char *);
-#endif
-
static int parse_number (int);
/* The sign of the number being parsed. */
static int number_sign = 1;
-/* The block that the module specified by the qualifer on an identifer is
- contained in, */
-#if 0
-static struct block *modblock=0;
-#endif
-
/* Enabling traces. */
@@ -263,7 +259,7 @@ static struct block *modblock=0;
#endif
#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 138 "m2-exp.y"
+#line 134 "m2-exp.y"
typedef union YYSTYPE {
LONGEST lval;
ULONGEST ulval;
@@ -280,7 +276,7 @@ typedef union YYSTYPE {
int *ivec;
} YYSTYPE;
/* Line 191 of yacc.c. */
-#line 284 "m2-exp.c"
+#line 280 "m2-exp.c"
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1
@@ -292,7 +288,7 @@ typedef union YYSTYPE {
/* Line 214 of yacc.c. */
-#line 296 "m2-exp.c"
+#line 292 "m2-exp.c"
#if ! defined (yyoverflow) || YYERROR_VERBOSE
@@ -507,15 +503,15 @@ static const yysigned_char yyrhs[] =
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const unsigned short yyrline[] =
{
- 0, 207, 207, 208, 211, 220, 225, 224, 231, 235,
- 239, 240, 243, 247, 251, 255, 259, 265, 271, 275,
- 281, 285, 289, 293, 297, 302, 306, 312, 316, 322,
- 328, 331, 335, 339, 343, 345, 355, 351, 362, 369,
- 366, 376, 379, 383, 388, 393, 398, 404, 410, 418,
- 422, 426, 430, 434, 438, 442, 446, 450, 452, 456,
- 460, 464, 468, 472, 476, 480, 487, 493, 499, 506,
- 515, 523, 530, 533, 540, 547, 551, 560, 572, 580,
- 584, 600, 645
+ 0, 203, 203, 204, 207, 216, 221, 220, 227, 231,
+ 235, 236, 239, 243, 247, 251, 255, 261, 267, 271,
+ 277, 281, 285, 289, 293, 298, 302, 308, 312, 318,
+ 324, 327, 331, 335, 339, 341, 351, 347, 358, 365,
+ 362, 372, 375, 379, 384, 389, 394, 400, 406, 414,
+ 418, 422, 426, 430, 434, 438, 442, 446, 448, 452,
+ 456, 460, 464, 468, 472, 476, 483, 489, 495, 502,
+ 511, 519, 526, 529, 536, 543, 547, 556, 568, 576,
+ 580, 603, 648
};
#endif
@@ -1479,7 +1475,7 @@ yyreduce:
switch (yyn)
{
case 4:
-#line 212 "m2-exp.y"
+#line 208 "m2-exp.y"
{ write_exp_elt_opcode(OP_TYPE);
write_exp_elt_type(yyvsp[0].tval);
write_exp_elt_opcode(OP_TYPE);
@@ -1487,327 +1483,327 @@ yyreduce:
break;
case 5:
-#line 221 "m2-exp.y"
+#line 217 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_IND); }
break;
case 6:
-#line 225 "m2-exp.y"
+#line 221 "m2-exp.y"
{ number_sign = -1; }
break;
case 7:
-#line 227 "m2-exp.y"
+#line 223 "m2-exp.y"
{ number_sign = 1;
write_exp_elt_opcode (UNOP_NEG); }
break;
case 8:
-#line 232 "m2-exp.y"
+#line 228 "m2-exp.y"
{ write_exp_elt_opcode(UNOP_PLUS); }
break;
case 9:
-#line 236 "m2-exp.y"
+#line 232 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_LOGICAL_NOT); }
break;
case 12:
-#line 244 "m2-exp.y"
+#line 240 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_CAP); }
break;
case 13:
-#line 248 "m2-exp.y"
+#line 244 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_ORD); }
break;
case 14:
-#line 252 "m2-exp.y"
+#line 248 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_ABS); }
break;
case 15:
-#line 256 "m2-exp.y"
+#line 252 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_HIGH); }
break;
case 16:
-#line 260 "m2-exp.y"
+#line 256 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_MIN);
write_exp_elt_type (yyvsp[-1].tval);
write_exp_elt_opcode (UNOP_MIN); }
break;
case 17:
-#line 266 "m2-exp.y"
+#line 262 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_MAX);
write_exp_elt_type (yyvsp[-1].tval);
write_exp_elt_opcode (UNOP_MAX); }
break;
case 18:
-#line 272 "m2-exp.y"
+#line 268 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_FLOAT); }
break;
case 19:
-#line 276 "m2-exp.y"
+#line 272 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_VAL);
write_exp_elt_type (yyvsp[-3].tval);
write_exp_elt_opcode (BINOP_VAL); }
break;
case 20:
-#line 282 "m2-exp.y"
+#line 278 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_CHR); }
break;
case 21:
-#line 286 "m2-exp.y"
+#line 282 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_ODD); }
break;
case 22:
-#line 290 "m2-exp.y"
+#line 286 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_TRUNC); }
break;
case 23:
-#line 294 "m2-exp.y"
+#line 290 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_SIZEOF); }
break;
case 24:
-#line 298 "m2-exp.y"
+#line 294 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_SIZEOF); }
break;
case 25:
-#line 303 "m2-exp.y"
+#line 299 "m2-exp.y"
{ write_exp_elt_opcode(UNOP_PREINCREMENT); }
break;
case 26:
-#line 307 "m2-exp.y"
+#line 303 "m2-exp.y"
{ write_exp_elt_opcode(BINOP_ASSIGN_MODIFY);
write_exp_elt_opcode(BINOP_ADD);
write_exp_elt_opcode(BINOP_ASSIGN_MODIFY); }
break;
case 27:
-#line 313 "m2-exp.y"
+#line 309 "m2-exp.y"
{ write_exp_elt_opcode(UNOP_PREDECREMENT);}
break;
case 28:
-#line 317 "m2-exp.y"
+#line 313 "m2-exp.y"
{ write_exp_elt_opcode(BINOP_ASSIGN_MODIFY);
write_exp_elt_opcode(BINOP_SUB);
write_exp_elt_opcode(BINOP_ASSIGN_MODIFY); }
break;
case 29:
-#line 323 "m2-exp.y"
+#line 319 "m2-exp.y"
{ write_exp_elt_opcode (STRUCTOP_STRUCT);
write_exp_string (yyvsp[0].sval);
write_exp_elt_opcode (STRUCTOP_STRUCT); }
break;
case 31:
-#line 332 "m2-exp.y"
+#line 328 "m2-exp.y"
{ error (_("Sets are not implemented."));}
break;
case 32:
-#line 336 "m2-exp.y"
+#line 332 "m2-exp.y"
{ error (_("Sets are not implemented."));}
break;
case 33:
-#line 340 "m2-exp.y"
+#line 336 "m2-exp.y"
{ error (_("Sets are not implemented."));}
break;
case 34:
-#line 344 "m2-exp.y"
+#line 340 "m2-exp.y"
{ error (_("Sets are not implemented."));}
break;
case 35:
-#line 346 "m2-exp.y"
+#line 342 "m2-exp.y"
{ error (_("Sets are not implemented."));}
break;
case 36:
-#line 355 "m2-exp.y"
+#line 351 "m2-exp.y"
{ start_arglist(); }
break;
case 37:
-#line 357 "m2-exp.y"
+#line 353 "m2-exp.y"
{ write_exp_elt_opcode (MULTI_SUBSCRIPT);
write_exp_elt_longcst ((LONGEST) end_arglist());
write_exp_elt_opcode (MULTI_SUBSCRIPT); }
break;
case 38:
-#line 363 "m2-exp.y"
+#line 359 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_SUBSCRIPT); }
break;
case 39:
-#line 369 "m2-exp.y"
+#line 365 "m2-exp.y"
{ start_arglist (); }
break;
case 40:
-#line 371 "m2-exp.y"
+#line 367 "m2-exp.y"
{ write_exp_elt_opcode (OP_FUNCALL);
write_exp_elt_longcst ((LONGEST) end_arglist ());
write_exp_elt_opcode (OP_FUNCALL); }
break;
case 42:
-#line 380 "m2-exp.y"
+#line 376 "m2-exp.y"
{ arglist_len = 1; }
break;
case 43:
-#line 384 "m2-exp.y"
+#line 380 "m2-exp.y"
{ arglist_len++; }
break;
case 44:
-#line 389 "m2-exp.y"
+#line 385 "m2-exp.y"
{ arglist_len = 1; }
break;
case 45:
-#line 394 "m2-exp.y"
+#line 390 "m2-exp.y"
{ arglist_len++; }
break;
case 46:
-#line 399 "m2-exp.y"
+#line 395 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_MEMVAL);
write_exp_elt_type (yyvsp[-2].tval);
write_exp_elt_opcode (UNOP_MEMVAL); }
break;
case 47:
-#line 405 "m2-exp.y"
+#line 401 "m2-exp.y"
{ write_exp_elt_opcode (UNOP_CAST);
write_exp_elt_type (yyvsp[-3].tval);
write_exp_elt_opcode (UNOP_CAST); }
break;
case 48:
-#line 411 "m2-exp.y"
+#line 407 "m2-exp.y"
{ }
break;
case 49:
-#line 419 "m2-exp.y"
+#line 415 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_REPEAT); }
break;
case 50:
-#line 423 "m2-exp.y"
+#line 419 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_MUL); }
break;
case 51:
-#line 427 "m2-exp.y"
+#line 423 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_DIV); }
break;
case 52:
-#line 431 "m2-exp.y"
+#line 427 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_INTDIV); }
break;
case 53:
-#line 435 "m2-exp.y"
+#line 431 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_REM); }
break;
case 54:
-#line 439 "m2-exp.y"
+#line 435 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_ADD); }
break;
case 55:
-#line 443 "m2-exp.y"
+#line 439 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_SUB); }
break;
case 56:
-#line 447 "m2-exp.y"
+#line 443 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_EQUAL); }
break;
case 57:
-#line 451 "m2-exp.y"
+#line 447 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_NOTEQUAL); }
break;
case 58:
-#line 453 "m2-exp.y"
+#line 449 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_NOTEQUAL); }
break;
case 59:
-#line 457 "m2-exp.y"
+#line 453 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_LEQ); }
break;
case 60:
-#line 461 "m2-exp.y"
+#line 457 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_GEQ); }
break;
case 61:
-#line 465 "m2-exp.y"
+#line 461 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_LESS); }
break;
case 62:
-#line 469 "m2-exp.y"
+#line 465 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_GTR); }
break;
case 63:
-#line 473 "m2-exp.y"
+#line 469 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_LOGICAL_AND); }
break;
case 64:
-#line 477 "m2-exp.y"
+#line 473 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_LOGICAL_OR); }
break;
case 65:
-#line 481 "m2-exp.y"
+#line 477 "m2-exp.y"
{ write_exp_elt_opcode (BINOP_ASSIGN); }
break;
case 66:
-#line 488 "m2-exp.y"
+#line 484 "m2-exp.y"
{ write_exp_elt_opcode (OP_BOOL);
write_exp_elt_longcst ((LONGEST) yyvsp[0].ulval);
write_exp_elt_opcode (OP_BOOL); }
break;
case 67:
-#line 494 "m2-exp.y"
+#line 490 "m2-exp.y"
{ write_exp_elt_opcode (OP_BOOL);
write_exp_elt_longcst ((LONGEST) yyvsp[0].ulval);
write_exp_elt_opcode (OP_BOOL); }
break;
case 68:
-#line 500 "m2-exp.y"
+#line 496 "m2-exp.y"
{ write_exp_elt_opcode (OP_LONG);
write_exp_elt_type (parse_m2_type->builtin_int);
write_exp_elt_longcst ((LONGEST) yyvsp[0].lval);
@@ -1815,7 +1811,7 @@ yyreduce:
break;
case 69:
-#line 507 "m2-exp.y"
+#line 503 "m2-exp.y"
{
write_exp_elt_opcode (OP_LONG);
write_exp_elt_type (parse_m2_type->builtin_card);
@@ -1825,7 +1821,7 @@ yyreduce:
break;
case 70:
-#line 516 "m2-exp.y"
+#line 512 "m2-exp.y"
{ write_exp_elt_opcode (OP_LONG);
write_exp_elt_type (parse_m2_type->builtin_char);
write_exp_elt_longcst ((LONGEST) yyvsp[0].ulval);
@@ -1833,7 +1829,7 @@ yyreduce:
break;
case 71:
-#line 524 "m2-exp.y"
+#line 520 "m2-exp.y"
{ write_exp_elt_opcode (OP_DOUBLE);
write_exp_elt_type (parse_m2_type->builtin_real);
write_exp_elt_dblcst (yyvsp[0].dval);
@@ -1841,7 +1837,7 @@ yyreduce:
break;
case 73:
-#line 534 "m2-exp.y"
+#line 530 "m2-exp.y"
{ write_exp_elt_opcode (OP_LONG);
write_exp_elt_type (parse_type->builtin_int);
write_exp_elt_longcst ((LONGEST) TYPE_LENGTH (yyvsp[-1].tval));
@@ -1849,19 +1845,19 @@ yyreduce:
break;
case 74:
-#line 541 "m2-exp.y"
+#line 537 "m2-exp.y"
{ write_exp_elt_opcode (OP_M2_STRING);
write_exp_string (yyvsp[0].sval);
write_exp_elt_opcode (OP_M2_STRING); }
break;
case 75:
-#line 548 "m2-exp.y"
+#line 544 "m2-exp.y"
{ yyval.bval = SYMBOL_BLOCK_VALUE(yyvsp[0].sym); }
break;
case 76:
-#line 552 "m2-exp.y"
+#line 548 "m2-exp.y"
{ struct symbol *sym
= lookup_symbol (copy_name (yyvsp[0].sval), expression_context_block,
VAR_DOMAIN, 0);
@@ -1869,7 +1865,7 @@ yyreduce:
break;
case 77:
-#line 561 "m2-exp.y"
+#line 557 "m2-exp.y"
{ struct symbol *tem
= lookup_symbol (copy_name (yyvsp[0].sval), yyvsp[-2].bval,
VAR_DOMAIN, 0);
@@ -1881,7 +1877,7 @@ yyreduce:
break;
case 78:
-#line 573 "m2-exp.y"
+#line 569 "m2-exp.y"
{ write_exp_elt_opcode(OP_VAR_VALUE);
write_exp_elt_block (NULL);
write_exp_elt_sym (yyvsp[0].sym);
@@ -1889,13 +1885,20 @@ yyreduce:
break;
case 80:
-#line 585 "m2-exp.y"
+#line 581 "m2-exp.y"
{ struct symbol *sym;
sym = lookup_symbol (copy_name (yyvsp[0].sval), yyvsp[-2].bval,
VAR_DOMAIN, 0);
if (sym == 0)
error (_("No symbol \"%s\" in specified context."),
copy_name (yyvsp[0].sval));
+ if (symbol_read_needs_frame (sym))
+ {
+ if (innermost_block == 0
+ || contained_in (block_found,
+ innermost_block))
+ innermost_block = block_found;
+ }
write_exp_elt_opcode (OP_VAR_VALUE);
/* block_found is set by lookup_symbol. */
@@ -1905,7 +1908,7 @@ yyreduce:
break;
case 81:
-#line 601 "m2-exp.y"
+#line 604 "m2-exp.y"
{ struct symbol *sym;
int is_a_field_of_this;
@@ -1950,7 +1953,7 @@ yyreduce:
break;
case 82:
-#line 646 "m2-exp.y"
+#line 649 "m2-exp.y"
{ yyval.tval = lookup_typename (parse_language, parse_gdbarch,
copy_name (yyvsp[0].sval),
expression_context_block, 0); }
@@ -1960,7 +1963,7 @@ yyreduce:
}
/* Line 1000 of yacc.c. */
-#line 1964 "m2-exp.c"
+#line 1967 "m2-exp.c"
yyvsp -= yylen;
yyssp -= yylen;
@@ -2185,7 +2188,7 @@ yyreturn:
}
-#line 652 "m2-exp.y"
+#line 655 "m2-exp.y"
/* Take care of parsing a number (anything that starts with a digit).
@@ -2195,8 +2198,7 @@ yyreturn:
/*** Needs some error checking for the float case ***/
static int
-parse_number (olen)
- int olen;
+parse_number (int olen)
{
char *p = lexptr;
LONGEST n = 0;
@@ -2606,23 +2608,8 @@ yylex (void)
}
}
-#if 0 /* Unused */
-static char *
-make_qualname(mod,ident)
- char *mod, *ident;
-{
- char *new = xmalloc(strlen(mod)+strlen(ident)+2);
-
- strcpy(new,mod);
- strcat(new,".");
- strcat(new,ident);
- return new;
-}
-#endif /* 0 */
-
void
-yyerror (msg)
- char *msg;
+yyerror (char *msg)
{
if (prev_lexptr)
lexptr = prev_lexptr;
« no previous file with comments | « gdb/lm32-tdep.c ('k') | gdb/m2-exp.y » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698