Commit 755e1387 authored by Rémy Oudompheng's avatar Rémy Oudompheng

cmd/8a: support XMM registers.

R=rsc, golang-dev
CC=golang-dev
https://golang.org/cl/6884046
parent 5cb1ed21
......@@ -55,7 +55,7 @@
%token <lval> LTYPE0 LTYPE1 LTYPE2 LTYPE3 LTYPE4
%token <lval> LTYPEC LTYPED LTYPEN LTYPER LTYPET LTYPES LTYPEM LTYPEI LTYPEG LTYPEXC
%token <lval> LCONST LFP LPC LSB
%token <lval> LBREG LLREG LSREG LFREG
%token <lval> LBREG LLREG LSREG LFREG LXREG
%token <dval> LFCONST
%token <sval> LSCONST LSP
%token <sym> LNAME LLAB LVAR
......@@ -359,6 +359,11 @@ reg:
$$ = nullgen;
$$.type = $1;
}
| LXREG
{
$$ = nullgen;
$$.type = $1;
}
| LSP
{
$$ = nullgen;
......
......@@ -210,6 +210,15 @@ struct
"F6", LFREG, D_F0+6,
"F7", LFREG, D_F0+7,
"X0", LXREG, D_X0+0,
"X1", LXREG, D_X0+1,
"X2", LXREG, D_X0+2,
"X3", LXREG, D_X0+3,
"X4", LXREG, D_X0+4,
"X5", LXREG, D_X0+5,
"X6", LXREG, D_X0+6,
"X7", LXREG, D_X0+7,
"CS", LSREG, D_CS,
"SS", LSREG, D_SS,
"DS", LSREG, D_DS,
......
This diff is collapsed.
/* A Bison parser, made by GNU Bison 2.6.5. */
/* A Bison parser, made by GNU Bison 2.4.1. */
/* Skeleton interface for Bison's Yacc-like parsers in C
/* Bison interface for Yacc-like parsers in C
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
Free Software Foundation, Inc.
Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
......@@ -32,6 +30,15 @@
This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */
#ifndef YY_YY_Y_TAB_H_INCLUDED
# define YY_YY_Y_TAB_H_INCLUDED
/* Enabling traces. */
#ifndef YYDEBUG
# define YYDEBUG 0
#endif
#if YYDEBUG
extern int yydebug;
#endif
/* Tokens. */
#ifndef YYTOKENTYPE
......@@ -62,12 +69,13 @@
LLREG = 278,
LSREG = 279,
LFREG = 280,
LFCONST = 281,
LSCONST = 282,
LSP = 283,
LNAME = 284,
LLAB = 285,
LVAR = 286
LXREG = 281,
LFCONST = 282,
LSCONST = 283,
LSP = 284,
LNAME = 285,
LLAB = 286,
LVAR = 287
};
#endif
/* Tokens. */
......@@ -94,21 +102,20 @@
#define LLREG 278
#define LSREG 279
#define LFREG 280
#define LFCONST 281
#define LSCONST 282
#define LSP 283
#define LNAME 284
#define LLAB 285
#define LVAR 286
#define LXREG 281
#define LFCONST 282
#define LSCONST 283
#define LSP 284
#define LNAME 285
#define LLAB 286
#define LVAR 287
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
typedef union YYSTYPE
{
/* Line 1676 of yacc.c */
/* Line 2042 of yacc.c */
#line 37 "a.y"
Sym *sym;
......@@ -123,9 +130,8 @@ typedef union YYSTYPE
Gen2 gen2;
/* Line 1676 of yacc.c */
#line 129 "y.tab.h"
/* Line 2042 of yacc.c */
#line 135 "y.tab.h"
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
......@@ -134,4 +140,18 @@ typedef union YYSTYPE
extern YYSTYPE yylval;
#ifdef YYPARSE_PARAM
#if defined __STDC__ || defined __cplusplus
int yyparse (void *YYPARSE_PARAM);
#else
int yyparse ();
#endif
#else /* ! YYPARSE_PARAM */
#if defined __STDC__ || defined __cplusplus
int yyparse (void);
#else
int yyparse ();
#endif
#endif /* ! YYPARSE_PARAM */
#endif /* !YY_YY_Y_TAB_H_INCLUDED */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment