1. 18 Jul, 2004 3 commits
    • Benoit Perrot's avatar
      Index: ChangeLog · 2b94343f
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	shell::Cmd is a minimalist AST, shell::Shell is one of its
      	visitor.
      
      	* src/shell/cmd.hh: Move execution engine to...
      	* src/shell/shell.hh, src/shell/shell.cc: This class.
      
      2b94343f
    • Benoit Perrot's avatar
      Index: ChangeLog · 843bf15e
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	* src/shell/shell.hh, src/shell.cc: Normalize string stream use.
      	
      843bf15e
    • Benoit Perrot's avatar
      Index: ChangeLog · 2d2fad33
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	* src/shell/shell.cc: Move readline wrapper to...
      	* src/misc/readline.hh: This file.
      	* src/misc/Makefile.am: Distribute readline.hh
      
      2d2fad33
  2. 15 Jul, 2004 2 commits
    • Benoit Perrot's avatar
      Index: ChangeLog · 9bc677cd
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	* tests/runtime/address-load.s, tests/runtime/address-store.s:
      	Test illegal access to memory.
      	* tests/runtime/Makefile.am: Distribute them.
      	
      9bc677cd
    • Benoit Perrot's avatar
      Index: ChangeLog · d01d0c82
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	* src/vm/memory.hh, src/vm/mmu.hh, src/vm/virtual_machine.cc:
      	Make the MMU responsible of address translation and exception 
      	raising.
      	* src/vm/cp0.hh (raise_addr_load, raise_addr_store): Add address
      	load and store exception.
      	* src/vm/virtual_machine.hh (execute): Stop execution on fatal
      	exceptions.
      
      d01d0c82
  3. 14 Jul, 2004 5 commits
    • Benoit Perrot's avatar
      Index: ChangeLog · efc8533f
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	* src/vm/mmu.hh: Hide instructions' access behind MMU.
      	* src/vm/cpu.hh, src/vm/cpu.cc, src/vm/virtual_machine.hh:
      	Use the MMU to access instructions.
      
      efc8533f
    • Benoit Perrot's avatar
      Index: ChangeLog · 4e5012c9
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	* src/vm/memory.hh, src/vm/mmu.hh, src/vm/cpu.cc,
      	* src/vm/virtual_machine.cc:
      	Implement reset() method.
      	* src/vm/virtual_machine.hh, src/vm/virtual_machine.hh:
      	Keep and reload the main offset of loaded program.
      
      4e5012c9
    • Benoit Perrot's avatar
      Index: ChangeLog · 7691c8d0
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
              * src/vm/virtual_machine.hh: Move the implementation of
              rarely used methods to...
              * src/vm/virtual_machine.cc: This file.
      
      
      7691c8d0
    • Benoit Perrot's avatar
      Index: ChangeLog · 99fde49b
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	* src/shell.cc (readline): When the true readline is lacking, use
      	STL's getline instead of istream::operator>> to get a line instead
      	of a word.
      	Reported by Julien Vanegue.
      
      99fde49b
    • Benoit Perrot's avatar
      Index: ChangeLog · bf456b38
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	* INSTALL: Explain --with-readline-{includes,library} usage.
      	Suggested by Marco Tessari.
      
      bf456b38
  4. 12 Jul, 2004 1 commit
  5. 08 Jul, 2004 1 commit
    • Benoit Perrot's avatar
      Index: ChangeLog · 81f752b2
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	* src/vm/cpu.hh (get_unlimited): Print a lovely error message when
      	an unlimited register is used before initialized.
      	* tests/runtime/Makefile.am, tests/runtime/uninitialized-x.s: 
      	Test the case.
      
      81f752b2
  6. 28 Jun, 2004 1 commit
  7. 27 Jun, 2004 2 commits
    • Benoit Perrot's avatar
      Index: ChangeLog · f3b26380
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	Update distribution's files.
      
      f3b26380
    • Benoit Perrot's avatar
      Index: ChangeLog · 76a230e0
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	Update test suite machinery.
      	
      	* tests/nolimips-check:
      	Rename PSYFLAGS to NOLFLAGS.
      	* tests/generate-ref.mk:
      	Distribute reference output files.
      	* tests/common.mk,
      	* tests/lexical/Makefile.am, tests/lexical/check-lexical,
      	* tests/runtime/Makefile.am, tests/runtime/check-runtime,
      	* tests/syntax/Makefile.am, tests/syntax/check-syntax, 
      	* tests/good/Makefile.am, tests/good/check-good,
      	* tests/solve/Makefile.am, tests/solve/check-solve,
      	* tests/unlimited/Makefile.am, tests/unlimited/check-unlimited,
      	Use automake's TESTS_ENVIRONMENT variable to set Nolimips' flags.
      	
      76a230e0
  8. 25 Jun, 2004 1 commit
    • Benoit Perrot's avatar
      Index: ChangeLog · 6bac5334
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	Make Nolimips compile on OS X.
      
      	* dev/parse-asm-scan.ll: 
      	Suggested by Akim Demaille: Prefer istringstream to strtoll.
      
      6bac5334
  9. 13 Jun, 2004 2 commits
    • Benoit Perrot's avatar
      from Benoît Perrot <benoit@lrde.epita.fr> · 2c8fce4f
      Benoit Perrot authored
      	Update makefile's machinery.
      
      	* src/parse/Makefile.am, dev/inst-makefile-gen.py:
      	Rename .log files to .stamp files.
      	* src/parse/Makefile.am:
      	Suggested by Akim Demaille: do not put asm-parse.cc in 
      	BUILT_SOURCES.
      
      2c8fce4f
    • Benoit Perrot's avatar
      Index: ChangeLog · a1f22c6c
      Benoit Perrot authored
      from  Beno?t Perrot  <benoit@lrde.epita.fr>
      
              Generate debian package.
      
              * distrib/debian/control,
              * distrib/debian/compat,
              * distrib/debian/changelog,
              * distrib/debian/copyright,
              * distrib/debian/docs,
              * distrib/debian/rules,
              * distrib/debian/info:
              Add debian package control files.
              * distrib/debian/Makefile.am, distrib/Makefile.am,
              * Makefile.am, configure.ac:
              Distribute distrib and distrib/debian subdirectories.
      
      a1f22c6c
  10. 03 Jun, 2004 1 commit
    • Benoit Perrot's avatar
      Index: ChangeLog · 8d8a0d8d
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
      	Bump to nolimips-0.7
      
      	* INSTALL, README, TODO,
      	* Makefile.am, bootstrap,
      	* configure.ac,
      	* dev/doc-inst-set-gen.py, dev/inst-builder-gen.py,
      	* dev/inst-makefile-gen.py, dev/inst-nodes-gen.py,
      	* dev/inst-solver-gen.py, dev/nolimips.py,
      	* dev/nolimips.xml, dev/parse-asm-parse-gen.py,
      	* dev/parse-asm-scan-gen.py,
      	* doc/Makefile.am, doc/macros.texi,
      	* src/Makefile.am, src/common.hh, src/modules.hh,
      	* src/inst/section.hh,
      	* src/inst/data_section.hh, src/inst/data_section.cc
      	* src/inst/text_section.hh, src/inst/text_section.cc,
      	* src/inst/program.hh, src/inst/program_builder.cc,
      	* src/inst/exp-visitor.hh, src/inst/exp.hh, src/inst/exp.cc
      	* src/inst/inst-tasks.cc, src/inst/inst-tasks.hh, 
      	* src/inst/inst.hh, src/inst/label.cc, src/inst/label.hh
      	* src/inst/register.hh,
      	* src/parse/Makefile.am, src/parse/asm-scan.hh,
      	* src/parse/libparse.cc, src/parse/libparse.hh,
      	* src/parse/parse-tasks.cc, src/parse/parse-tasks.hh,
      	* src/shell/cmd.hh,
      	* src/shell/shell-tasks.cc, src/shell/shell-tasks.hh,
      	* src/shell/shell.cc, src/shell/shell.hh,
      	* src/task/task-tasks.cc, src/task/task-tasks.hh,
      	* src/task/task.cc, src/task/task.hh,
      	* src/task/task_register.cc, src/task/task_register.hh,
      	* src/vm/cp0.hh, src/vm/cpu.hh, src/vm/cpu.cc
      	* src/vm/memory.hh, src/vm/mmu.hh, src/vm/segment.hh
      	* src/vm/table.hh, src/vm/virtual_machine.hh
      	* src/vm/vm-tasks.cc, src/vm/vm-tasks.hh
      	* tests/Makefile.am, tests/generate-ref.mk, tests/good/check-good
      	* tests/good/fact.s, tests/lexical/check-lexical,
      	* tests/runtime/check-runtime, tests/solve/check-solve
      	* tests/syntax/check-syntax, tests/unlimited/check-unlimited:
      	Rename mipsy as nolimips.
      
      	* dev/mipsy.py, dev/mipsy.xml,
      	* doc/mipsy.texi,
      	* src/mipsy.cc, src/mipsy-tasks.cc, src/mipsy-tasks.hh,
      	* tests/mipsy-check:
      	Move to...
      	* dev/nolimips.py, dev/nolimips.xml,
      	* doc/nolimips.texi,
      	* src/nolimips.cc, src/nolimips-tasks.cc, src/nolimips-tasks.hh,
      	* tests/nolimips-check:
      	These new files.
      
      	* NEWS, configure.ac:
      	Bump to nolimips-0.7.
      
      8d8a0d8d
  11. 20 May, 2004 1 commit
    • Benoit Perrot's avatar
      Index: ChangeLog · 5545ab7d
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
              * src/misc/contract.hh,
              * src/misc/counted_ptr.hh,
              * src/misc/deref.hh,
              * src/misc/escape.hh,
              * src/misc/has.hh,
              * src/misc/select_const.hh:
              Add license.
      5545ab7d
  12. 15 May, 2004 1 commit
    • Benoit Perrot's avatar
      Index: ChangeLog · 03178a83
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
              * src/misc/counted_ptr.hh,
              * src/misc/Makefile.am:
              Add counted_ptr tool.
              * dev/inst-nodes-gen.py,
              * src/inst/exp.hh,
              * src/inst/program_builder.cc:
              Use counted pointers in expression trees.
      03178a83
  13. 08 May, 2004 4 commits
    • Benoit Perrot's avatar
      Index: ChangeLog · 3d642b98
      Benoit Perrot authored
              * doc/mipsy.texi:
              Document it.
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      3d642b98
    • Benoit Perrot's avatar
      Index: ChangeLog · 8303533c
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
              * NEWS,
              * dev/inst-builder-gen.py,
              * src/parse/libparse.cc, src/parse/libparse.hh,
              * src/parse/parse-tasks.cc, src/parse/parse-tasks.hh,
              * src/shell/cmd.hh,
              * src/shell/shell.cc, src/shell/shell.hh,
              * tests/good/Makefile.am, tests/good/check-good
              * tests/runtime/check-runtime,
              * tests/unlimited/Makefile.am, tests/unlimited/check-unlimited:
              Rename `--fill-delay-slots' to `--nop-after-branch', which is more
              accurate. Reserve `--fill-delay-slots' for optimal delay slots
              filling.
      
      8303533c
    • Benoit Perrot's avatar
      Index: ChangeLog · 0ed87a67
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
              * tests/good/fact.s, tests/good/Makefile.am:
              Add new test.
      
      0ed87a67
    • Benoit Perrot's avatar
      Index: ChangeLog · b06225a4
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
              * src/inst/register.hh:
              Add a copy constructor.
              * dev/inst-nodes-gen.py:
              Copy inst::Registers instead of keeping a pointer on them,
              avoiding hazardous memory manipulations.
              * dev/inst-builder-gen.py, src/inst/program_builder.cc,
              * src/vm/cpu.cc (bubble_):
              Prefer copy to reallocation of inst::Registers.
              * dev/parse-asm-parse-gen.py:
              Once they are copied, delete the inst::Registers created by the
              scanner.
      
      b06225a4
  14. 02 May, 2004 3 commits
    • Benoit Perrot's avatar
      Index: ChangeLog · 5090881f
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
              * src/shell/shell.cc:
              Use std::cin when readline library cannot be used. Add history to
              readline.
      
      5090881f
    • Benoit Perrot's avatar
      Index: ChangeLog · 363c8a4a
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
              * configure.ac, config/readline.m4,
              * src/Makefile.am, src/shell/Makefile.am:
              Improve readline detection and related information use.
      
      363c8a4a
    • Benoit Perrot's avatar
      Index: ChangeLog · 1e2603e8
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
              * src/shell/cmd.hh,
              * src/shell/shell.hh, src/shell/shell.cc:
              Use std::string instead of char* or std::string*, avoiding
              hazardous memory manipulations.
      1e2603e8
  15. 25 Apr, 2004 3 commits
    • Benoit Perrot's avatar
      Index: ChangeLog · f9e11802
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
              * src/shell/cmd.hh,
              * src/shell/shell.cc, src/shell/shell.hh:
              Use references instead of pointers for aggregated attributes.
      
      f9e11802
    • Benoit Perrot's avatar
      Index: ChangeLog · bd66c316
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
              Use coprocessor to raise exception.
      
              * src/vm/cp0.hh:
              (raise_overflow) Raise an arithmetic overflow exception.
              * src/vm/cpu.cc:
              Call raise_overflow when an arithmetic overflow occurs.
      
      bd66c316
    • Benoit Perrot's avatar
      Index: ChangeLog · 63785fc1
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
              * src/mipsy-tasks.hh,
              * src/vm/vm-tasks.hh,
              * src/shell/shell-tasks.hh:
              Add short options.
              * src/task/task_register.hh, src/task/task_register.cc:
              Support concatenated short options.
              * NEWS, doc/mipsy.texi:
              Document this.
      63785fc1
  16. 24 Apr, 2004 4 commits
    • Benoit Perrot's avatar
      Index: ChangeLog · 6f851c4e
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
              Enhance readline detection.
      
              * config/readline.m4:
              Provide AC_CHECK_READLINE.
              * configure.ac, src/Makefile.am:
              Use AC_CHECK_READLINE to check readline library presence and
              usability.
      
      6f851c4e
    • Benoit Perrot's avatar
      Index: ChangeLog · 7b3c59df
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
              Restore distcheck with automake1.8
      
              * Makefile.am: Distribute inst-solver-gen.py.
              * dev/doc-inst-set-gen.py,
              * doc/mipsy.texi:
              Suggested by Akim Demaille: do not use commands in @node.
              The file texinfo.tex from automake1.8 does not handle it, leading to
              make dvi failure, leading to make distcheck failure.
              * doc/Makefile.am: Do not distribute deprecated files anymore.
      
      7b3c59df
    • Benoit Perrot's avatar
      Index: ChangeLog · 561e4a1c
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
              * AUTHORS: Add Jérémy Demeule as contributor.
              * NEWS: Update.
      561e4a1c
    • Benoit Perrot's avatar
      2004-04-20 Jérémy Demeule <demeul_j@epita.fr> · 636b9f41
      Benoit Perrot authored
              Add an interactive shell.
      
              * src/vm/cpu.hh, src/vm/cpu.cc:
              Add a print operator.
              * src/vm/virtual_machine.hh:
              Add breakpoint suport and some shell entry points for step by step
              execution.
      
              * src/shell/cmd.hh,
              * src/shell/shell.cc, src/shell/shell.hh:
              Implement interactive shell, using readline.
              * src/shell/shell-tasks.cc, src/shell/shell-tasks.hh:
              Add shell's tasks.
              * src/shell/Makefile.am:
              Distribute shell.
              * src/modules.hh:
              Declare shell.
      
              * configure.ac:
              Check for readline library. Add shell directory.
              * src/Makefile.am:
              Add shell directory and link with readline.
      
      636b9f41
  17. 04 Apr, 2004 3 commits
    • Benoit Perrot's avatar
      Index: ChangeLog · 3b12f953
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
              * src/vm/cp0.hh:
              Add control coprocessor.
              * src/vm/Makefile.am:
              Distribute it.
              * src/vm/cpu.hh, src/vm/cpu.cc,
              * src/vm/virtual_machine.hh:
              Use control coprocessor.
              * dev/mipsy.py,
              * dev/mipsy.xml:
              Add instructions to move registers to/from control coprocessor.
              * dev/inst-solver-gen.py,
              Check register identifiers for control coprocessor instructions.
      
      3b12f953
    • Benoit Perrot's avatar
      Index: ChangeLog · a89344a0
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
              * dev/inst-solver-gen.py,
              * dev/parse-asm-scan-gen.py,
              * src/inst/register.hh:
              Support generic register identifiers.
              * NEWS:
              Document it.
              * tests/lexical/unlimited-regs.s:
              Move to...
              * tests/solve/unlimited-regs.s:
              This file.
              * tests/lexical/Makefile.am,
              * tests/solve/Makefile.am:
              Update.
      
      a89344a0
    • Benoit Perrot's avatar
      Index: ChangeLog · fd67a92e
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
              * dev/mipsy.py:
              Add a C++ variable identifier writer.
              * dev/inst-solver-gen.py:
              Generate program solver (interface and implementation).
              * dev/inst-makefile-gen.py:
              Use the generator.
              * src/inst/program_solver.hh:
              Remove now generated file.
      
      fd67a92e
  18. 03 Apr, 2004 2 commits
    • Benoit Perrot's avatar
      Index: ChangeLog · b9021fd0
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
              * src/common.hh,
              * src/mipsy.cc,
              * src/inst/exp.hh,
              * src/inst/register.hh,
              * src/vm/cpu.hh, src/vm/cpu.cc:
              Use STL type naming style on enumerations.
      b9021fd0
    • Benoit Perrot's avatar
      Index: ChangeLog · 792a192b
      Benoit Perrot authored
      from  Benoît Perrot  <benoit@lrde.epita.fr>
      
              * dev/inst-nodes-gen.py,
              * src/inst/exp.cc:
              Display the identifier of labels and registers instead of
              their address.
      792a192b