mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 12:23:04 +00:00
* src/getargs.c (long_options): Remove duplicates.
* src/vmsgetargs.c, src/build.com, src/bison.cld, src/vmshlp.mar: Remove. * doc/bison.rnh: Remove. * doc/bison.texinfo (VMS Invocation): Remove.
This commit is contained in:
@@ -1,3 +1,11 @@
|
|||||||
|
2002-11-12 Akim Demaille <akim@epita.fr>
|
||||||
|
|
||||||
|
* src/getargs.c (long_options): Remove duplicates.
|
||||||
|
* src/vmsgetargs.c, src/build.com, src/bison.cld, src/vmshlp.mar:
|
||||||
|
Remove.
|
||||||
|
* doc/bison.rnh: Remove.
|
||||||
|
* doc/bison.texinfo (VMS Invocation): Remove.
|
||||||
|
|
||||||
2002-11-12 Akim Demaille <akim@epita.fr>
|
2002-11-12 Akim Demaille <akim@epita.fr>
|
||||||
|
|
||||||
* src/struniq.h, src/struniq.c (struniq_t): Is const.
|
* src/struniq.h, src/struniq.c (struniq_t): Is const.
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ info_TEXINFOS = bison.texinfo
|
|||||||
man_MANS = bison.1
|
man_MANS = bison.1
|
||||||
bison_TEXINFOS = gpl.texi fdl.texi
|
bison_TEXINFOS = gpl.texi fdl.texi
|
||||||
|
|
||||||
EXTRA_DIST = FAQ bison.1 bison.rnh refcard.tex
|
EXTRA_DIST = FAQ bison.1 refcard.tex
|
||||||
|
|
||||||
CLEANFILES = refcard.dvi refcard.log refcard.ps
|
CLEANFILES = refcard.dvi refcard.log refcard.ps
|
||||||
|
|
||||||
|
|||||||
192
doc/bison.rnh
192
doc/bison.rnh
@@ -1,192 +0,0 @@
|
|||||||
.!
|
|
||||||
.! RUNOFF source file for BISON.HLP
|
|
||||||
.!
|
|
||||||
.! This is a RUNOFF input file which will produce a VMS help file
|
|
||||||
.! for the VMS HELP library.
|
|
||||||
.!
|
|
||||||
.! Eric Youngdale and Wilfred J. Hansen (wjh+@cmu.edu).
|
|
||||||
.!
|
|
||||||
.literal
|
|
||||||
.end literal
|
|
||||||
.no paging
|
|
||||||
.no flags all
|
|
||||||
.right margin 70
|
|
||||||
.left margin 1
|
|
||||||
|
|
||||||
.indent -1
|
|
||||||
1 BISON
|
|
||||||
.skip
|
|
||||||
The BISON command invokes the GNU BISON parser generator.
|
|
||||||
.skip
|
|
||||||
.literal
|
|
||||||
BISON file-spec
|
|
||||||
.end literal
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 Parameters
|
|
||||||
.skip
|
|
||||||
file-spec
|
|
||||||
.skip
|
|
||||||
Here file-spec is the grammar file name, which usually ends in
|
|
||||||
.y. The parser file's name is made by replacing the .y
|
|
||||||
with _tab.c. Thus, the command bison foo.y yields
|
|
||||||
foo_tab.c.
|
|
||||||
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 Qualifiers
|
|
||||||
.skip
|
|
||||||
The following is the list of available qualifiers for BISON:
|
|
||||||
.literal
|
|
||||||
/DEBUG
|
|
||||||
/DEFINES
|
|
||||||
/FILE_PREFIX=prefix
|
|
||||||
/FIXED_OUTFILES
|
|
||||||
/NAME_PREFIX=prefix
|
|
||||||
/NOLINES
|
|
||||||
/NOPARSER
|
|
||||||
/OUTPUT=outfilefile
|
|
||||||
/RAW
|
|
||||||
/TOKEN_TABLE
|
|
||||||
/VERBOSE
|
|
||||||
/VERSION
|
|
||||||
/YACC
|
|
||||||
.end literal
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /DEBUG
|
|
||||||
.skip
|
|
||||||
In the parser file,
|
|
||||||
define the macro YYDEBUG to 1 if it is not already defined,
|
|
||||||
so that the debugging facilities are compiled.
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /DEFINES
|
|
||||||
.skip
|
|
||||||
Write an extra output file containing macro definitions for the token
|
|
||||||
type names defined in the grammar and the semantic value type
|
|
||||||
YYSTYPE, as well as a extern variable declarations.
|
|
||||||
.skip
|
|
||||||
If the parser output file is named "name.c" then this file
|
|
||||||
is named "name.h".
|
|
||||||
.skip
|
|
||||||
This output file is essential if you wish to put the definition of
|
|
||||||
yylex in a separate source file, because yylex needs to
|
|
||||||
be able to refer to token type codes and the variable
|
|
||||||
yylval.
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /FILE_PREFIX
|
|
||||||
.skip
|
|
||||||
.literal
|
|
||||||
/FILIE_PREFIX=prefix
|
|
||||||
.end literal
|
|
||||||
.skip
|
|
||||||
Specify a prefix to use for all Bison output file names. The names are
|
|
||||||
chosen as if the input file were named prefix.c
|
|
||||||
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /FIXED_OUTFILES
|
|
||||||
.skip
|
|
||||||
Equivalent to /OUTPUT=y_tab.c; the parser output file is called
|
|
||||||
y_tab.c, and the other outputs are called y.output and
|
|
||||||
y_tab.h. The purpose of this switch is to imitate Yacc's output
|
|
||||||
file name conventions. The /YACC qualifier is functionally equivalent
|
|
||||||
to /FIXED_OUTFILES. The following command definition will
|
|
||||||
work as a substitute for Yacc:
|
|
||||||
|
|
||||||
.literal
|
|
||||||
$YACC:==BISON/FIXED_OUTFILES
|
|
||||||
.end literal
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /NAME_PREFIX
|
|
||||||
.skip
|
|
||||||
.literal
|
|
||||||
/NAME_PREFIX=prefix
|
|
||||||
.end literal
|
|
||||||
.skip
|
|
||||||
Rename the external symbols used in the parser so that they start with
|
|
||||||
"prefix" instead of "yy". The precise list of symbols renamed
|
|
||||||
is yyparse, yylex, yyerror, yylval, yychar and yydebug.
|
|
||||||
|
|
||||||
For example, if you use /NAME_PREFIX="c", the names become cparse,
|
|
||||||
clex, and so on.
|
|
||||||
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /NOLINES
|
|
||||||
.skip
|
|
||||||
Don't put any "#line" preprocessor commands in the parser file.
|
|
||||||
Ordinarily Bison puts them in the parser file so that the C compiler
|
|
||||||
and debuggers will associate errors with your source file, the
|
|
||||||
grammar file. This option causes them to associate errors with the
|
|
||||||
parser file, treating it an independent source file in its own right.
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /NOPARSER
|
|
||||||
.skip
|
|
||||||
Do not generate the parser code into the output; generate only
|
|
||||||
declarations. The generated name_tab.c file will have only
|
|
||||||
constant declarations. In addition, a name.act file is
|
|
||||||
generated containing a switch statement body containing all the
|
|
||||||
translated actions.
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /OUTPUT
|
|
||||||
.skip
|
|
||||||
.literal
|
|
||||||
/OUTPUT=outfile
|
|
||||||
.end literal
|
|
||||||
.skip
|
|
||||||
Specify the name "outfile" for the parser file.
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /RAW
|
|
||||||
.skip
|
|
||||||
When this switch is specified, the .tab.h file defines the tokens to
|
|
||||||
have the bison token numbers rather than the yacc compatible numbers.
|
|
||||||
To employ this switch you would have to have your own parser.
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /TOKEN_TABLE
|
|
||||||
.skip
|
|
||||||
This switch causes the name_tab.c output to include a list of
|
|
||||||
token names in order by their token numbers; this is defined in the array
|
|
||||||
yytname. Also generated are #defines for YYNTOKENS, YYNNTS, YYNRULES,
|
|
||||||
and YYNSTATES.
|
|
||||||
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /VERBOSE
|
|
||||||
.skip
|
|
||||||
Write an extra output file containing verbose descriptions of the
|
|
||||||
parser states and what is done for each type of look-ahead token in
|
|
||||||
that state.
|
|
||||||
.skip
|
|
||||||
This file also describes all the conflicts, both those resolved by
|
|
||||||
operator precedence and the unresolved ones.
|
|
||||||
.skip
|
|
||||||
The file's name is made by removing _tab.c or .c from
|
|
||||||
the parser output file name, and adding .output instead.
|
|
||||||
.skip
|
|
||||||
Therefore, if the input file is foo.y, then the parser file is
|
|
||||||
called foo_tab.c by default. As a consequence, the verbose
|
|
||||||
output file is called foo.output.
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /VERSION
|
|
||||||
.skip
|
|
||||||
Print the version number of Bison.
|
|
||||||
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
2 /YACC
|
|
||||||
.skip
|
|
||||||
See /FIXED_OUTFILES.
|
|
||||||
.skip
|
|
||||||
.indent -1
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -268,7 +268,6 @@ Invoking Bison
|
|||||||
* Bison Options:: All the options described in detail,
|
* Bison Options:: All the options described in detail,
|
||||||
in alphabetical order by short options.
|
in alphabetical order by short options.
|
||||||
* Option Cross Key:: Alphabetical list of long options.
|
* Option Cross Key:: Alphabetical list of long options.
|
||||||
* VMS Invocation:: Bison command syntax on @acronym{VMS}.
|
|
||||||
|
|
||||||
Frequently Asked Questions
|
Frequently Asked Questions
|
||||||
|
|
||||||
@@ -5906,7 +5905,6 @@ will produce @file{output.c++} and @file{outfile.h++}.
|
|||||||
* Bison Options:: All the options described in detail,
|
* Bison Options:: All the options described in detail,
|
||||||
in alphabetical order by short options.
|
in alphabetical order by short options.
|
||||||
* Option Cross Key:: Alphabetical list of long options.
|
* Option Cross Key:: Alphabetical list of long options.
|
||||||
* VMS Invocation:: Bison command syntax on @acronym{VMS}.
|
|
||||||
@end menu
|
@end menu
|
||||||
|
|
||||||
@node Bison Options
|
@node Bison Options
|
||||||
@@ -6098,34 +6096,6 @@ the corresponding short option.
|
|||||||
@end example
|
@end example
|
||||||
@end ifinfo
|
@end ifinfo
|
||||||
|
|
||||||
@node VMS Invocation
|
|
||||||
@section Invoking Bison under @acronym{VMS}
|
|
||||||
@cindex invoking Bison under @acronym{VMS}
|
|
||||||
@cindex @acronym{VMS}
|
|
||||||
|
|
||||||
The command line syntax for Bison on @acronym{VMS} is a variant of the usual
|
|
||||||
Bison command syntax---adapted to fit @acronym{VMS} conventions.
|
|
||||||
|
|
||||||
To find the @acronym{VMS} equivalent for any Bison option, start with the long
|
|
||||||
option, and substitute a @samp{/} for the leading @samp{--}, and
|
|
||||||
substitute a @samp{_} for each @samp{-} in the name of the long option.
|
|
||||||
For example, the following invocation under @acronym{VMS}:
|
|
||||||
|
|
||||||
@example
|
|
||||||
bison /debug/name_prefix=bar foo.y
|
|
||||||
@end example
|
|
||||||
|
|
||||||
@noindent
|
|
||||||
is equivalent to the following command under @acronym{POSIX}.
|
|
||||||
|
|
||||||
@example
|
|
||||||
bison --debug --name-prefix=bar foo.y
|
|
||||||
@end example
|
|
||||||
|
|
||||||
The @acronym{VMS} file system does not permit filenames such as
|
|
||||||
@file{foo.tab.c}. In the above example, the output file
|
|
||||||
would instead be named @file{foo_tab.c}.
|
|
||||||
|
|
||||||
@c ================================================= Invoking Bison
|
@c ================================================= Invoking Bison
|
||||||
|
|
||||||
@node FAQ
|
@node FAQ
|
||||||
|
|||||||
@@ -65,9 +65,5 @@ bison_SOURCES = \
|
|||||||
|
|
||||||
BUILT_SOURCES = scan-skel.c scan-gram.c parse-gram.c parse-gram.h
|
BUILT_SOURCES = scan-skel.c scan-gram.c parse-gram.c parse-gram.h
|
||||||
|
|
||||||
EXTRA_bison_SOURCES = vmsgetargs.c
|
|
||||||
|
|
||||||
EXTRA_DIST = build.com bison.cld vmshlp.mar
|
|
||||||
|
|
||||||
echo:
|
echo:
|
||||||
echo $(bison_SOURCES) $(noinst_HEADERS)
|
echo $(bison_SOURCES) $(noinst_HEADERS)
|
||||||
|
|||||||
@@ -1,21 +0,0 @@
|
|||||||
!
|
|
||||||
! VMS BISON command definition file
|
|
||||||
!
|
|
||||||
DEFINE VERB BISON
|
|
||||||
IMAGE GNU_BISON:[000000]BISON
|
|
||||||
|
|
||||||
PARAMETER P1,Label=BISON$INFILE,Prompt="File"
|
|
||||||
value(required,type=$infile)
|
|
||||||
QUALIFIER VERBOSE,Label=BISON$VERBOSE
|
|
||||||
QUALIFIER DEFINES,Label=BISON$DEFINES
|
|
||||||
QUALIFIER FIXED_OUTFILES,Label=BISON$FIXED_OUTFILES
|
|
||||||
QUALIFIER NOPARSER,Label=BISON$NOPARSER
|
|
||||||
QUALIFIER RAW,LABEL=BISON$RAW
|
|
||||||
QUALIFIER TOKEN_TABLE,LABEL=BISON$TOKEN_TABLE
|
|
||||||
qualifier nolines,Label=BISON$NOLINES
|
|
||||||
qualifier debug,Label=BISON$DEBUG
|
|
||||||
qualifier output,value(type=$outfile),Label=BISON$OUTPUT
|
|
||||||
qualifier version,label=BISON$VERSION
|
|
||||||
qualifier yacc,label=BISON$YACC
|
|
||||||
qualifier file_prefix,value(type=$outfile),label=BISON$FILE_PREFIX
|
|
||||||
qualifier name_prefix,value(type=$outfile),LABEL=BISON$NAME_PREFIX
|
|
||||||
@@ -1,83 +0,0 @@
|
|||||||
$! Set the def dir to proper place for use in batch. Works for interactive too.
|
|
||||||
$flnm = f$enviroment("PROCEDURE") ! get current procedure name
|
|
||||||
$set default 'f$parse(flnm,,,"DEVICE")''f$parse(flnm,,,"DIRECTORY")'
|
|
||||||
$!
|
|
||||||
$! This command procedure compiles and links BISON for VMS.
|
|
||||||
$! BISON has been tested with VAXC version 2.3 and VMS version 4.5
|
|
||||||
$! and on VMS 4.5 with GCC 1.12.
|
|
||||||
$!
|
|
||||||
$! Bj|rn Larsen blarsen@ifi.uio.no
|
|
||||||
$! With some contributions by Gabor Karsai,
|
|
||||||
$! KARSAIG1%VUENGVAX.BITNET@jade.berkeley.edu
|
|
||||||
$! All merged and cleaned by RMS.
|
|
||||||
$!
|
|
||||||
$! Adapted for both VAX-11 "C" and VMS/GCC compilation by
|
|
||||||
$! David L. Kashtan kashtan.iu.ai.sri.com
|
|
||||||
$!
|
|
||||||
$! First we try to sense which C compiler we have available. Sensing logic
|
|
||||||
$! borrowed from Emacs.
|
|
||||||
$!
|
|
||||||
$set noon !do not bomb if an error occurs.
|
|
||||||
$assign nla0: sys$output
|
|
||||||
$assign nla0: sys$error !so we do not get an error message about this.
|
|
||||||
$cc nla0:compiler_check.c
|
|
||||||
$if $status.eq.%x38090 then goto try_gcc
|
|
||||||
$ CC :== CC
|
|
||||||
$ cc_options:="/NOLIST/define=(""index=strchr"",""rindex=strrchr"")"
|
|
||||||
$ extra_linker_files:="VMSHLP,"
|
|
||||||
$goto have_compiler
|
|
||||||
$!
|
|
||||||
$try_gcc:
|
|
||||||
$gcc nla0:compiler_check.c
|
|
||||||
$if $status.eq.%x38090 then goto whoops
|
|
||||||
$ CC :== GCC
|
|
||||||
$ cc_options:="/DEBUG"
|
|
||||||
$ extra_linker_files:="GNU_CC:[000000]GCCLIB/LIB,"
|
|
||||||
$goto have_compiler
|
|
||||||
$!
|
|
||||||
$whoops:
|
|
||||||
$write sys$output "You must have a C compiler to build BISON. Sorry."
|
|
||||||
$deassign sys$output
|
|
||||||
$deassign sys$error
|
|
||||||
$exit %x38090
|
|
||||||
$!
|
|
||||||
$!
|
|
||||||
$have_compiler:
|
|
||||||
$deassign sys$output
|
|
||||||
$deassign sys$error
|
|
||||||
$set on
|
|
||||||
$if f$search("compiler_check.obj").nes."" then dele/nolog compiler_check.obj;
|
|
||||||
$write sys$output "Building BISON with the ''cc' compiler."
|
|
||||||
$!
|
|
||||||
$! Do the compilation (compiler type is all set up)
|
|
||||||
$!
|
|
||||||
$ Compile:
|
|
||||||
$ if "''p1'" .eqs. "LINK" then goto Link
|
|
||||||
$ 'CC' 'cc_options' files.c
|
|
||||||
$ 'CC' 'cc_options' LR0.C
|
|
||||||
$ 'CC' 'cc_options' ALLOCATE.C
|
|
||||||
$ 'CC' 'cc_options' CLOSURE.C
|
|
||||||
$ 'CC' 'cc_options' CONFLICTS.C
|
|
||||||
$ 'CC' 'cc_options' DERIVES.C
|
|
||||||
$ 'CC' 'cc_options' VMSGETARGS.C
|
|
||||||
$ 'CC' 'cc_options' GRAM.C
|
|
||||||
$ 'CC' 'cc_options' LALR.C
|
|
||||||
$ 'CC' 'cc_options' LEX.C
|
|
||||||
$ 'CC' 'cc_options' MAIN.C
|
|
||||||
$ 'CC' 'cc_options' NULLABLE.C
|
|
||||||
$ 'CC' 'cc_options' OUTPUT.C
|
|
||||||
$ 'CC' 'cc_options' PRINT.C
|
|
||||||
$ 'CC' 'cc_options' READER.C
|
|
||||||
$ 'CC' 'cc_options' REDUCE.C
|
|
||||||
$ 'CC' 'cc_options' SYMTAB.C
|
|
||||||
$ 'CC' 'cc_options' WARSHALL.C
|
|
||||||
$ 'CC' 'cc_options' VERSION.C
|
|
||||||
$ if "''CC'" .eqs. "CC" then macro vmshlp.mar
|
|
||||||
$ Link:
|
|
||||||
$ link/exec=bison main,LR0,allocate,closure,conflicts,derives,files,-
|
|
||||||
vmsgetargs,gram,lalr,lex,nullable,output,print,reader,reduce,symtab,warshall,-
|
|
||||||
version,'extra_linker_files'sys$library:vaxcrtl/lib
|
|
||||||
$!
|
|
||||||
$! Generate bison.hlp (for online help).
|
|
||||||
$!
|
|
||||||
$runoff bison.rnh
|
|
||||||
@@ -284,18 +284,6 @@ static struct option const long_options[] =
|
|||||||
/* Hidden. */
|
/* Hidden. */
|
||||||
{ "trace", optional_argument, 0, 'T' },
|
{ "trace", optional_argument, 0, 'T' },
|
||||||
|
|
||||||
/* FIXME: semantic parsers will output an `include' of an
|
|
||||||
output file: be sure that the naem included is indeed the name of
|
|
||||||
the output file. */ /* FIXME Should we activate this options ?
|
|
||||||
*/
|
|
||||||
{ "output", required_argument, 0, 'o' },
|
|
||||||
{ "file-prefix", required_argument, 0, 'b' },
|
|
||||||
{ "name-prefix", required_argument, 0, 'p' },
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Percent and command line declarations.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Output. */
|
/* Output. */
|
||||||
{ "defines", optional_argument, 0, 'd' },
|
{ "defines", optional_argument, 0, 'd' },
|
||||||
|
|
||||||
|
|||||||
@@ -591,8 +591,7 @@ prepare (void)
|
|||||||
MUSCLE_INSERT_INT ("pure", pure_parser);
|
MUSCLE_INSERT_INT ("pure", pure_parser);
|
||||||
MUSCLE_INSERT_INT ("synclines_flag", !no_lines_flag);
|
MUSCLE_INSERT_INT ("synclines_flag", !no_lines_flag);
|
||||||
|
|
||||||
/* FIXME: This is wrong: the muscles should decide whether they hold
|
/* File names. */
|
||||||
a copy or not, but the situation is too obscure currently. */
|
|
||||||
MUSCLE_INSERT_STRING ("prefix", spec_name_prefix ? spec_name_prefix : "yy");
|
MUSCLE_INSERT_STRING ("prefix", spec_name_prefix ? spec_name_prefix : "yy");
|
||||||
|
|
||||||
/* User Code. */
|
/* User Code. */
|
||||||
|
|||||||
@@ -1,42 +0,0 @@
|
|||||||
;/* Macro help routines for the BISON/VMS program
|
|
||||||
; Gabor Karsai, Vanderbilt University
|
|
||||||
;
|
|
||||||
;BISON is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
||||||
;WARRANTY. No author or distributor accepts responsibility to anyone
|
|
||||||
;for the consequences of using it or for whether it serves any
|
|
||||||
;particular purpose or works at all, unless he says so in writing.
|
|
||||||
;Refer to the BISON General Public License for full details.
|
|
||||||
;
|
|
||||||
;Everyone is granted permission to copy, modify and redistribute BISON,
|
|
||||||
;but only under the conditions described in the BISON General Public
|
|
||||||
;License. A copy of this license is supposed to have been given to you
|
|
||||||
;along with BISON so you can know your rights and responsibilities. It
|
|
||||||
;should be in a file named COPYING. Among other things, the copyright
|
|
||||||
;notice and this notice must be preserved on all copies.
|
|
||||||
;
|
|
||||||
; In other words, you are welcome to use, share and improve this program.
|
|
||||||
; You are forbidden to forbid anyone else to use, share and improve
|
|
||||||
; what you give them. Help stamp out software-hoarding! */
|
|
||||||
;
|
|
||||||
.psect vmshlp pic,usr,rel,ovr,shr,long,exe,nowrt
|
|
||||||
|
|
||||||
alloca::
|
|
||||||
.word 0
|
|
||||||
subl2 ^X4(ap),sp
|
|
||||||
movl ^X10(fp),r1
|
|
||||||
movq ^X8(fp),ap
|
|
||||||
bicl2 #03,sp
|
|
||||||
addl2 #^X1c,sp
|
|
||||||
movl sp,r0
|
|
||||||
jmp (r1)
|
|
||||||
|
|
||||||
bcopy::
|
|
||||||
.word ^X0e00
|
|
||||||
movl ^X04(ap),r11
|
|
||||||
movl ^X08(ap),r10
|
|
||||||
movl ^X0c(ap),r9
|
|
||||||
brb 1$
|
|
||||||
2$: movb (r10)+,(r11)+
|
|
||||||
1$: sobgeq r9,2$
|
|
||||||
ret
|
|
||||||
.end
|
|
||||||
Reference in New Issue
Block a user