]> granicus.if.org Git - yasm/log
yasm
23 years agoImplemented rcpss and fixed opcode encoding for rcpps.
Peter Johnson [Wed, 30 May 2001 08:02:47 +0000 (08:02 -0000)]
Implemented rcpss and fixed opcode encoding for rcpps.

svn path=/trunk/yasm/; revision=46

23 years agoRealign table columns to allow enough space for the opcode.
Peter Johnson [Wed, 30 May 2001 08:00:26 +0000 (08:00 -0000)]
Realign table columns to allow enough space for the opcode.
Caveat: does make some lines >80 columns.

svn path=/trunk/yasm/; revision=45

23 years agoUse new interface functions in bytecode.c instead of writing values directly.
Peter Johnson [Wed, 30 May 2001 07:41:27 +0000 (07:41 -0000)]
Use new interface functions in bytecode.c instead of writing values directly.

svn path=/trunk/yasm/; revision=44

23 years agoReorganize (yet again) effective address, immediate value, and instruction
Peter Johnson [Wed, 30 May 2001 07:41:03 +0000 (07:41 -0000)]
Reorganize (yet again) effective address, immediate value, and instruction
structures.
Add more interface functions to isolate structure internals and make it
easier to add warnings (such as for multiple overrides/prefixes).

svn path=/trunk/yasm/; revision=43

23 years agoAdd multiple segment override/prefix warnings.
Peter Johnson [Wed, 30 May 2001 07:38:42 +0000 (07:38 -0000)]
Add multiple segment override/prefix warnings.

svn path=/trunk/yasm/; revision=42

23 years agoAdded third opcode byte
Michael Urman [Wed, 30 May 2001 07:26:28 +0000 (07:26 -0000)]
Added third opcode byte

svn path=/trunk/yasm/; revision=41

23 years agomore modular retrofitting
Michael Urman [Wed, 30 May 2001 07:25:13 +0000 (07:25 -0000)]
more modular retrofitting

svn path=/trunk/yasm/; revision=40

23 years agoMoved from 2-byte to 3-byte opcodes.
Peter Johnson [Wed, 30 May 2001 07:07:16 +0000 (07:07 -0000)]
Moved from 2-byte to 3-byte opcodes.

svn path=/trunk/yasm/; revision=39

23 years agoHorrible hack to fold ONE, and REG_A* into more general versions of the
Michael Urman [Wed, 30 May 2001 06:43:02 +0000 (06:43 -0000)]
Horrible hack to fold ONE, and REG_A* into more general versions of the
grammar, but only if they actually exist in the set; generate normally
if the more general version doesn't exist.

svn path=/trunk/yasm/; revision=38

23 years agoCall new error output functions after every line.
Peter Johnson [Tue, 22 May 2001 20:48:21 +0000 (20:48 -0000)]
Call new error output functions after every line.
Moved line_number increment into single location.
Use SetEASegment() to set the segment override in memory addresses.

svn path=/trunk/yasm/; revision=37

23 years agoAdded SetEASegment and SetEAAddressSize (not yet implemented).
Peter Johnson [Tue, 22 May 2001 20:46:13 +0000 (20:46 -0000)]
Added SetEASegment and SetEAAddressSize (not yet implemented).

svn path=/trunk/yasm/; revision=36

23 years agoSplit error and warning handlers into notify and output functions.
Peter Johnson [Tue, 22 May 2001 20:44:32 +0000 (20:44 -0000)]
Split error and warning handlers into notify and output functions.
Paired with changes in bison.y.in, this will make sure only one error
and/or warning is output for each line.

svn path=/trunk/yasm/; revision=35

23 years agoBrought @valid_regs up-to-date with bison.y.in.
Peter Johnson [Tue, 22 May 2001 07:17:50 +0000 (07:17 -0000)]
Brought @valid_regs up-to-date with bison.y.in.

svn path=/trunk/yasm/; revision=34

23 years agoFix all shift/reduce and reduce/reduce conflicts except for those that
Peter Johnson [Tue, 22 May 2001 07:17:04 +0000 (07:17 -0000)]
Fix all shift/reduce and reduce/reduce conflicts except for those that
involve REG_AL, REG_AX, and REG_EAX with immediates.  Also eliminated
various unused rules.
Still need to figure out the proper thing to do with XCHG and AX/EAX as
one of the parameters.
Build still breaks because ONE is not a real token (it needs to be handled
along with the AL, AX, and EAX conflicts in gen_instr.pl).

svn path=/trunk/yasm/; revision=33

23 years agoChanged structure to one hash - now order is not preserved.
Michael Urman [Mon, 21 May 2001 22:33:23 +0000 (22:33 -0000)]
Changed structure to one hash - now order is not preserved.
On the bright side, rules use the | where appropriate.
Arguments after TO rules are shifted right by 1.
Aliased arguments are handled in the lexer.

svn path=/trunk/yasm/; revision=32

23 years agoAdded bison.y and token.l (now dynamically generated).
Peter Johnson [Mon, 21 May 2001 22:11:13 +0000 (22:11 -0000)]
Added bison.y and token.l (now dynamically generated).

svn path=/trunk/yasm/; revision=31

23 years agoAdded TO and segreg.
Peter Johnson [Mon, 21 May 2001 22:10:27 +0000 (22:10 -0000)]
Added TO and segreg.

svn path=/trunk/yasm/; revision=30

23 years agoAdded "TO".
Peter Johnson [Mon, 21 May 2001 22:10:02 +0000 (22:10 -0000)]
Added "TO".

svn path=/trunk/yasm/; revision=29

23 years agoFirst commit. Generates all needed sections of token.l, bison.y from
Michael Urman [Mon, 21 May 2001 21:46:33 +0000 (21:46 -0000)]
First commit.  Generates all needed sections of token.l, bison.y from
instrs.dat, token.l.in, bison.y.in.  Optionally can use other files, or
just verify input is valid.

svn path=/trunk/yasm/; revision=28

23 years agoInserted /* @FOO@ */ markers for dynamic generation via gen_instr.pl.
Michael Urman [Mon, 21 May 2001 21:44:47 +0000 (21:44 -0000)]
Inserted /* @FOO@ */ markers for dynamic generation via gen_instr.pl.

svn path=/trunk/yasm/; revision=27

23 years agoAdded dynamic generation of token.l, bison.y from token.l.in, bison.y.in.
Michael Urman [Mon, 21 May 2001 21:43:47 +0000 (21:43 -0000)]
Added dynamic generation of token.l, bison.y from token.l.in, bison.y.in.
It's ugly, but it only generates once until new files exist.

svn path=/trunk/yasm/; revision=26

23 years agoRepocopied to .in version in preparation for gen_instr.pl generation of
Peter Johnson [Mon, 21 May 2001 21:18:07 +0000 (21:18 -0000)]
Repocopied to .in version in preparation for gen_instr.pl generation of
instruction components.

svn path=/trunk/yasm/; revision=25

23 years agoNeed to zero need_modrm in BuildBC_Insn() if no EA.
Peter Johnson [Mon, 21 May 2001 21:04:54 +0000 (21:04 -0000)]
Need to zero need_modrm in BuildBC_Insn() if no EA.

svn path=/trunk/yasm/; revision=24

23 years agoAdded .cvsignore for src and include directories.
Peter Johnson [Mon, 21 May 2001 20:22:07 +0000 (20:22 -0000)]
Added .cvsignore for src and include directories.

svn path=/trunk/yasm/; revision=23

23 years agoAdded conversion from immediate value to effective address. Used for enter
Peter Johnson [Mon, 21 May 2001 20:17:51 +0000 (20:17 -0000)]
Added conversion from immediate value to effective address.  Used for enter
instruction (which takes two immediate values).
To facilitate this change, changed meaning of "len" in bytecode structure
to be only the length of the offset (from being 1+length, the 1 being for the
Mod/RM byte), and added a need_modrm flag similar to the need_sib flag in
functionality.

svn path=/trunk/yasm/; revision=22

23 years agoAdded warning for "value exceeds bounds".
Peter Johnson [Mon, 21 May 2001 20:14:58 +0000 (20:14 -0000)]
Added warning for "value exceeds bounds".

svn path=/trunk/yasm/; revision=21

23 years agoReformatted BuildBC_Insn's argument list to aligned one arg per line.
Michael Urman [Mon, 21 May 2001 19:32:51 +0000 (19:32 -0000)]
Reformatted BuildBC_Insn's argument list to aligned one arg per line.

svn path=/trunk/yasm/; revision=20

23 years agoImplemented dynamic argument types for error and warning messages.
Peter Johnson [Mon, 21 May 2001 18:31:43 +0000 (18:31 -0000)]
Implemented dynamic argument types for error and warning messages.

svn path=/trunk/yasm/; revision=19

23 years agoFix syntax of main() definition.
Peter Johnson [Mon, 21 May 2001 02:15:53 +0000 (02:15 -0000)]
Fix syntax of main() definition.
Return EXIT_SUCCESS instead of 0 for portability.

svn path=/trunk/yasm/; revision=18

23 years agoFixed regex match for DIRECTIVE_VAL.
Peter Johnson [Sun, 20 May 2001 08:39:48 +0000 (08:39 -0000)]
Fixed regex match for DIRECTIVE_VAL.

svn path=/trunk/yasm/; revision=17

23 years agoChanged implementation of directives. Added some rudimentary error checking.
Peter Johnson [Sun, 20 May 2001 08:35:18 +0000 (08:35 -0000)]
Changed implementation of directives.  Added some rudimentary error checking.

svn path=/trunk/yasm/; revision=16

23 years agoyyerror() moved to errwarn.c. Changed file comment to reflect that error
Peter Johnson [Sun, 20 May 2001 08:32:08 +0000 (08:32 -0000)]
yyerror() moved to errwarn.c.  Changed file comment to reflect that error
and warning code is not in this file.

svn path=/trunk/yasm/; revision=15

23 years agoAdded errwarn.o to dependencies (error and warning reporting).
Peter Johnson [Sun, 20 May 2001 08:30:04 +0000 (08:30 -0000)]
Added errwarn.o to dependencies (error and warning reporting).

svn path=/trunk/yasm/; revision=14

23 years agoInitial check-in. Still need to implement dynamic argument typing.
Peter Johnson [Sun, 20 May 2001 08:28:57 +0000 (08:28 -0000)]
Initial check-in.  Still need to implement dynamic argument typing.

svn path=/trunk/yasm/; revision=13

23 years agoRemoved accidental garbage in last commit.
Peter Johnson [Fri, 18 May 2001 21:59:44 +0000 (21:59 -0000)]
Removed accidental garbage in last commit.

svn path=/trunk/yasm/; revision=12

23 years agoMerge immediate and relative structures.
Peter Johnson [Fri, 18 May 2001 21:42:32 +0000 (21:42 -0000)]
Merge immediate and relative structures.

svn path=/trunk/yasm/; revision=11

23 years agoIndicate some more immediates are signed.
Peter Johnson [Fri, 18 May 2001 21:41:48 +0000 (21:41 -0000)]
Indicate some more immediates are signed.

svn path=/trunk/yasm/; revision=10

23 years agoFix prototype warning.
Peter Johnson [Fri, 18 May 2001 21:40:54 +0000 (21:40 -0000)]
Fix prototype warning.

svn path=/trunk/yasm/; revision=9

23 years agoAdd -Wstrict-prototypes.
Peter Johnson [Fri, 18 May 2001 21:40:02 +0000 (21:40 -0000)]
Add -Wstrict-prototypes.

svn path=/trunk/yasm/; revision=8

23 years agoInitial check-in.
Peter Johnson [Tue, 15 May 2001 05:28:44 +0000 (05:28 -0000)]
Initial check-in.

svn path=/trunk/yasm/; revision=7

23 years agoInitial check-in.
Peter Johnson [Tue, 15 May 2001 05:24:42 +0000 (05:24 -0000)]
Initial check-in.
Needs doublechecking of everything, particularly CPU flags.

svn path=/trunk/yasm/; revision=6

23 years agoInitial check-in.
Peter Johnson [Tue, 15 May 2001 05:20:39 +0000 (05:20 -0000)]
Initial check-in.
Contains hardcoded instructions that should be dynamically generated.

svn path=/trunk/yasm/; revision=5

23 years agoInitial check-in.
Peter Johnson [Tue, 15 May 2001 05:18:00 +0000 (05:18 -0000)]
Initial check-in.
Requires GNU Make.

svn path=/trunk/yasm/; revision=4

23 years agoCurrent license (GPL).
Peter Johnson [Tue, 8 May 2001 05:40:54 +0000 (05:40 -0000)]
Current license (GPL).

svn path=/trunk/yasm/; revision=3