2000-07-26 04:17:09 +04:00
|
|
|
typedef union {long itype; tree ttype; enum tree_code code;
|
|
|
|
char *filename; int lineno; int ends_in_label; } YYSTYPE;
|
pull across a few changes from gcc-current for sparc64:
1999/08/02 Jakub Jelinek <jj@ultra.linux.cz>
* config/sparc/sparc.h (ASM_DECLARE_REGISTER_GLOBAL): New macro.
(RTX_OK_FOR_OLO10): Likewise.
(GO_IF_LEGITIMATE_ADDRESS): If assembler supports offsetable
%lo(), allow it in addresses...
(PRINT_OPERAND_ADDRESS): ... and print it appropriately.
* config/sparc/sparc.md (sethi_di_medlow_embmedany_pic): sethi %lo()
does not make sense.
* config/sparc/sparc.c (sparc_hard_reg_printed): New array.
(sparc_output_scratch_registers): New function.
(output_function_prologue, sparc_flat_output_function_prologue): Use
it.
* varasm.c (make_decl_rtl): Use ASM_DECLARE_REGISTER_GLOBAL if
defined.
* tm.texi (ASM_DECLARE_REGISTER_GLOBAL): Document it.
1999/07/30 Jakub Jelinek <jj@ultra.linux.cz>
* config/sparc/sparc.md (cmp_mul_set, cmp_udiv_cc_set):
Fix patterns so that they actually match.
(cmp_sdiv_cc_set): Ditto, also don't require g0 to be zero.
(mulsidi3_sp64, const_mulsidi3_sp64): New patterns.
(const_mulsidi3_sp32): Renamed from const_mulsidi3, only on
TARGET_HARD_MUL32.
(mulsidi3): Reflect this in the expand.
(smulsi3_highpart): Only on TARGET_ARCH32.
(umulsidi3_sp64, const_umulsidi3_sp64): New patterns.
(const_umulsidi3_sp32): Renamed from const_umulsidi3.
(umulsidi3): Reflect this in the expand.
(umulsi3_highpart): Only on TARGET_ARCH32.
(divsi3_sp32): Renamed from divsi3, only on TARGET_ARCH32,
don't require g0 to be zero.
(udivsi3_sp32): Renamed from udivsi3, only on TARGET_ARCH32.
({,u}divsi3): New expands.
({,u}divsi3_sp64): New patterns.
(after lshrdi3_v8plus): Four new patterns to help combiner
optimizing nested mixed mode shifts.
2001-03-06 08:21:47 +03:00
|
|
|
#define IDENTIFIER 257
|
|
|
|
#define TYPENAME 258
|
|
|
|
#define SCSPEC 259
|
|
|
|
#define TYPESPEC 260
|
|
|
|
#define TYPE_QUAL 261
|
|
|
|
#define CONSTANT 262
|
|
|
|
#define STRING 263
|
|
|
|
#define ELLIPSIS 264
|
|
|
|
#define SIZEOF 265
|
|
|
|
#define ENUM 266
|
|
|
|
#define STRUCT 267
|
|
|
|
#define UNION 268
|
|
|
|
#define IF 269
|
|
|
|
#define ELSE 270
|
|
|
|
#define WHILE 271
|
|
|
|
#define DO 272
|
|
|
|
#define FOR 273
|
|
|
|
#define SWITCH 274
|
|
|
|
#define CASE 275
|
|
|
|
#define DEFAULT 276
|
|
|
|
#define BREAK 277
|
|
|
|
#define CONTINUE 278
|
|
|
|
#define RETURN 279
|
|
|
|
#define GOTO 280
|
|
|
|
#define ASM_KEYWORD 281
|
|
|
|
#define TYPEOF 282
|
|
|
|
#define ALIGNOF 283
|
|
|
|
#define ATTRIBUTE 284
|
|
|
|
#define EXTENSION 285
|
|
|
|
#define LABEL 286
|
|
|
|
#define REALPART 287
|
|
|
|
#define IMAGPART 288
|
|
|
|
#define ASSIGN 289
|
|
|
|
#define OROR 290
|
|
|
|
#define ANDAND 291
|
|
|
|
#define EQCOMPARE 292
|
|
|
|
#define ARITHCOMPARE 293
|
|
|
|
#define LSHIFT 294
|
|
|
|
#define RSHIFT 295
|
|
|
|
#define UNARY 296
|
|
|
|
#define PLUSPLUS 297
|
|
|
|
#define MINUSMINUS 298
|
|
|
|
#define HYPERUNARY 299
|
|
|
|
#define POINTSAT 300
|
|
|
|
#define INTERFACE 301
|
|
|
|
#define IMPLEMENTATION 302
|
|
|
|
#define END 303
|
|
|
|
#define SELECTOR 304
|
|
|
|
#define DEFS 305
|
|
|
|
#define ENCODE 306
|
|
|
|
#define CLASSNAME 307
|
|
|
|
#define PUBLIC 308
|
|
|
|
#define PRIVATE 309
|
|
|
|
#define PROTECTED 310
|
|
|
|
#define PROTOCOL 311
|
|
|
|
#define OBJECTNAME 312
|
|
|
|
#define CLASS 313
|
|
|
|
#define ALIAS 314
|
|
|
|
#define OBJC_STRING 315
|
2000-07-26 04:17:09 +04:00
|
|
|
|
|
|
|
|
|
|
|
extern YYSTYPE yylval;
|