1. 27 Dec, 2005 2 commits
    • Benoit Perrot's avatar
      2005-12-27 Benoît Perrot <benoit@lrde.epita.fr> · ab222035
      Benoit Perrot authored
      	print is still a python keyword
      
      	* src/misc/table.hh,
      	* src/inst/register.hh,
      	* src/inst/exp.hh, src/inst/exp.cc,
      	* src/inst/op_exp.hh, src/inst/op_exp.cc,
      	* src/inst/label_exp.hh, src/inst/label_exp.cc,
      	* 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/vm/cpu.hh, src/vm/cpu.cc,
      	* src/vm/virtual_machine.hh:
      	(print) Rename as...
      	(write).
      
      ab222035
    • Benoit Perrot's avatar
      2005-12-27 Benoît Perrot <benoit@lrde.epita.fr> · 9e40ce78
      Benoit Perrot authored
      	print is a python keyword
      
      	* src/inst/inst.hh, src/inst/nodes.gen.py:
      	(print) Rename as...
      	(write).
      
      9e40ce78
  2. 23 Dec, 2005 2 commits
  3. 05 Nov, 2005 1 commit
    • Benoit Perrot's avatar
      2005-11-05 Benoît Perrot <benoit@lrde.epita.fr> · 9c8e14bd
      Benoit Perrot authored
      	Rename config/ as build-aux/ to match with up-to-date coding
      	standards.
      	
      	* config/Makefile.am, config/bison++.in,
      	* config/move-if-change, config/readline.m4:
      	Move to...
      	* build-aux/Makefile.am, build-aux/bison++.in,
      	* build-aux/move-if-change, build-aux/readline.m4:
      	... here.
      	* configure.ac, Makefile.am, src/parse/Makefile.am:
      	Adjust accordingly.
      
      9c8e14bd
  4. 20 Oct, 2005 1 commit
    • Roland Levillain's avatar
      2005-10-20 Roland Levillain <roland@lrde.epita.fr> · 2d20d595
      Roland Levillain authored
      	Update bison++.
      
      	* configure.ac: Check for bison instead of yacc.
      	(AC_CONFIG_FILES): Generate config/bison++.
      	* config/bison++: Rename as...
      	* config/bison++.in: ...this.
      	Be robust to absolute srcdir paths.
      	* config/Makefile.am (dist_noinst_SCRIPTS): Move bison++...
      	(nodist_noinst_SCRIPTS): ...here (new variable).
      	* src/parse/Makefile.am (BISONXX, BISONXX_IN): New.
      	(BISONXX_IN): New rule.
      	(EXTRA_DIST): Add $(srcdir)/asm-parse.yy.
      	((srcdir)/bison++.stamp): Add $(srcdir)/asm-parse.yy as a
      	dependency and ensure bison++ is up-to-date.
      	(libparse_a_SOURCES): Remove asm-parse.yy.
      	Add asm-parse.cc.
      2d20d595
  5. 16 Oct, 2005 1 commit
    • Benoit Perrot's avatar
      2005-10-16 Benoît Perrot <benoit@lrde.epita.fr> · 11416d95
      Benoit Perrot authored
      	Provide --system-library option.
      
      	* src/task/string_task.hh, src/task/string_task.cc:
      	New.
      	* src/task/libtask.hh, src/task/Makefile.am:
      	Distribute them.
      	* src/vm-tasks.hh, src/vm-tasks.hh:
      	(select_system_library): Implement builtin system library
      	selection.
      	* NEWS: Update.
      
      11416d95
  6. 03 Oct, 2005 1 commit
  7. 01 Oct, 2005 1 commit
    • Benoit Perrot's avatar
      2005-10-01 Benoît Perrot <benoit@lrde.epita.fr> · 1fd5e72f
      Benoit Perrot authored
      	Introduce nolimips system library.
      	
      	* src/vm/nolimips_system_library.hh,
      	* src/vm/nolimips_system_library.hxx,
      	* src/vm/nolimips_system_library.cc:
      	Provide a set of some libc functions as syscalls.
      	* src/vm/Makefile.am: Distribute these new files.
      	* src/vm-tasks.cc: Fix missing include.
      	
      1fd5e72f
  8. 28 Sep, 2005 1 commit
  9. 25 Sep, 2005 1 commit
    • Benoit Perrot's avatar
      2005-09-25 Benoît Perrot <benoit@lrde.epita.fr> · 4fbb0766
      Benoit Perrot authored
      	Reduce includes' dependencies.
      	
      	* src/vm/cpu.hh, src/vm/cpu.cc
      	* src/vm/virtual_machine.hh, src/vm/virtual_machine.cc
      	* src/parse/asm-parse.yy.gen.py, src/parse/asm-scan.ll.gen.py,
      	* src/inst/register.hh,
      	* src/inst/op_exp.hh,
      	* src/inst/label_exp.hh,
      	* src/inst/exp.hh,
      	* src/inst/section.hh, src/inst/data_section.hh,
      	* src/inst/program.hh
      	* src/inst/nodes.gen.py
      	* src/inst/inst.hh
      	* src/inst/label.hh:
      	Remove unused includes, forward-declare classes.
      
      4fbb0766
  10. 24 Sep, 2005 1 commit
    • Benoit Perrot's avatar
      2005-09-24 Benoît Perrot <benoit@lrde.epita.fr> · 902282e4
      Benoit Perrot authored
      	Introduce system libraries.
      
      	* src/vm/cpu.hh, src/vm/cpu.cc:
      	Export mmu and cp0. Move syscalls' implementation to...
      	* src/vm/system_library.hh, src/vm/system_library.cc,
      	* src/vm/spim_system_library.hh, src/vm/spim_system_library.hxx,
      	* src/vm/spim_system_library.cc:
      	These new files.
      	* src/vm/cp0.hh: Export fatal_exception flag.
      	* src/vm/Makefile.am: Update accordingly.
      	* src/vm/virtual_machine.hh, src/vm/virtual_machine.cc:
      	Propagate system library to cpu.
      	* src/vm-tasks.cc: 
      	Give a default system library to virtual machine.
      
      902282e4
  11. 17 Sep, 2005 2 commits
  12. 03 Sep, 2005 2 commits
    • Benoit Perrot's avatar
      2005-09-03 Benoît Perrot <benoit@lrde.epita.fr> · c87d6b9a
      Benoit Perrot authored
      	Detect several definitions of the same label in a section.
      
      	* src/inst/section.hh (register_label):
      	Return false when label is already known in the section, true
      	otherwise. Move implementation to...
      	* src/inst/section.cc, src/inst/Makefile.am:
      	This new file.
      	* src/inst/data_section.hh, src/inst/data_section.cc,
      	* src/inst/text_section.hh, src/inst/text_section.cc (define_label):
      	Propagate status of register_label.
      	* src/inst/program_builder.hh.gen.py:
      	Generate an error when a label is defined more than once.
      	* tests/solve/data-label-already-defined.s,
      	* tests/solve/text-label-already-defined.s,
      	* tests/solve/Makefile.am:
      	Test it.
      
      c87d6b9a
    • Benoit Perrot's avatar
      2005-09-03 Benoît Perrot <benoit@lrde.epita.fr> · cca2f866
      Benoit Perrot authored
      	* src/misc/unique_string.hh, src/misc/unique_string.cc: 
      	Introduce a constructor from a const char*. Factor string
      	insertion in pool.
      	Suggested by Akim Demaille: Use a set of strings instead of a set
      	of pointers as internal pool. Compose an iterator instead of a
      	pointer.
      	* src/parse/asm-scan.ll.gen.py: 
      	Suggested by Akim Demaille: Don't be affraid to side-affect
      	yytext.
      
      cca2f866
  13. 01 Sep, 2005 2 commits
    • Benoit Perrot's avatar
      2005-09-01 Benoît Perrot <benoit@lrde.epita.fr> · 7e46b563
      Benoit Perrot authored
      	Shame on me.
      
      	* src/misc/unique_string.hh: Fix error: static member function cannot 
      	have const qualifier.
      
      7e46b563
    • Benoit Perrot's avatar
      2005-09-01 Benoît Perrot <benoit@lrde.epita.fr> · 082b5c71
      Benoit Perrot authored
      	Simplify unique_string construction.
      
      	* src/misc/unique_string.hh, src/misc/unique_string.cc (create):
      	Remove. Move its implementation to unique_string's constructor,
      	hence make unique_string aggregate a pointer-to-string instead of a
      	reference.
      	* src/misc/test-unique_string.cc, src/vm/virtual_machine.cc, 
      	* src/shell/shell.cc, src/parse/asm-parse.yy.gen.py,
      	* src/parse/asm-scan.ll.gen.py, src/inst/label_exp.hh,
      	* src/inst/section.hh, src/inst/label.hh:
      	Adjust.
      
      082b5c71
  14. 07 Aug, 2005 2 commits
  15. 31 Jul, 2005 2 commits
    • Benoit Perrot's avatar
      2005-07-31 Benoît Perrot <benoit@nostromo.lrde.epita.fr> · e7ae3852
      Benoit Perrot authored
      	Move generators to source directories.
      
      	* dev/parse-asm-parse-gen.py, dev/parse-asm-scan-gen.py,
      	* dev/inst-solver-gen.py, dev/inst-nodes-gen.py,
      	* dev/inst-builder-gen.py, dev/inst-nodes-mk-gen.py,
      	* dev/doc-inst-set-gen.py:
      	Move to...
      	* src/parse/asm-parse.yy.gen.py, src/parse/asm-scan.ll.gen.py,
      	* src/inst/program_solver.gen.py, src/inst/nodes.gen.py,
      	* src/inst/program_builder.hh.gen.py, src/inst/nodes.mk.gen.py,
      	* doc/inst-set.texi.gen.py:
      	These files (respectively).
      	* src/parse/Makefile.am, src/inst/Makefile.am, doc/Makefile.am,
      	* Makefile.am:
      	Update accordingly.
      	
      e7ae3852
    • Benoit Perrot's avatar
      2005-07-31 Benoît Perrot <benoit@nostromo.lrde.epita.fr> · 50db7c36
      Benoit Perrot authored
      	* configure.ac: Bump to 0.8a
      	* NEWS: Fix release date.
      
      50db7c36
  16. 11 Jul, 2005 1 commit
  17. 03 Jul, 2005 1 commit
  18. 21 Apr, 2005 1 commit
    • Benoit Perrot's avatar
      2005-04-21 Benoît Perrot <benoit@lrde.epita.fr> · 15962a44
      Benoit Perrot authored
      	* dec/parse-asm-scan-gen.py: Explicitely dispatch on signed
      	integer when reading one from a string, by checking its first
      	character (g++-3.4 considers converting "-1" into an "(unsigned&) i"
      	as an error, whereas g++-3.3 did not).
      
      15962a44
  19. 15 Apr, 2005 1 commit
  20. 02 Apr, 2005 3 commits
    • Benoit Perrot's avatar
      2005-04-02 Benoît Perrot <benoit@lrde.epita.fr> · dddbcfb9
      Benoit Perrot authored
      	Introduce `lockable' facility.
      
      	* src/misc/lockable.hh: New file.
      	* src/misc/Makefile.am: Distribute it.
      	* src/inst/text_label.hh, src/inst/exp.hh, src/inst/label.hh,
      	* src/inst/int_exp.hh, src/inst/int_exp.cc:
      	Use lockable.
      	* dev/inst-solver-gen.py: Update accordingly.
      
      dddbcfb9
    • Benoit Perrot's avatar
      2005-04-02 Benoît Perrot <benoit@lrde.epita.fr> · 956e2a0e
      Benoit Perrot authored
      	Split `exp' files.
      
      	* src/inst/exp.hh, src/inst/exp.cc:
      	Split into...
      	* src/inst/label_exp.hh, src/inst/label_exp.cc,
      	* src/inst/op_exp.hh, src/inst/op_exp.cc,
      	* src/inst/int_exp.hh, src/inst/exp.hh:
      	These files.
      	* src/inst/Makefile.am:	Distribute them.
      	* src/vm/cpu.cc, dev/inst-builder-gen.py, dev/inst-solver-gen.py:
      	Update accordingly.
      	
      956e2a0e
    • Benoit Perrot's avatar
      2005-04-02 Benoît Perrot <benoit@lrde.epita.fr> · 9c517382
      Benoit Perrot authored
      	Fix distcheck broken since 2005-03-08's patch.
      
      	* src/vm/Makefile.am: Do not distribute `table.hh' from here, but...
      	* src/misc/Makefile.am: From here.
      
      9c517382
  21. 17 Mar, 2005 1 commit
    • Benoit Perrot's avatar
      2005-03-17 Benoît Perrot <benoit@lrde.epita.fr> · 855cddf8
      Benoit Perrot authored
      	Introduce command identifier completion in shell.
      	
      	* src/shell/shell.hh, src/shell-tasks.cc:
      	Make Shell a singleton.
      	* src/shell/shell.cc: Use readline's custom completers system 
      	to complete command identifiers.
      	
      855cddf8
  22. 08 Mar, 2005 3 commits
    • Benoit Perrot's avatar
      2005-03-08 Benoît Perrot <benoit@lrde.epita.fr> · 5298fb04
      Benoit Perrot authored
      	* src/vm/table.hh: Move to...
      	* src/misc/table.hh: This file.
      	* src/vm/cpu.hh: Update accordingly.
      
      5298fb04
    • Benoit Perrot's avatar
      2005-03-08 Benoît Perrot <benoit@lrde.epita.fr> · d0a692ef
      Benoit Perrot authored
      	Prefer explicit function calls to constructor optional arguments
      	to set non-mandatory attributes (e.g. trace flags).
      
      	* src/vm/cpu.hh, src/vm/cpu.cc, src/vm/virtual_machine.hh,
      	* dev/inst-builder-gen.py (Cpu, VirtualMachine, ProgramBuilder): 
      	Remove uncomprehensible boolean arguments from constructor, add
      	corresponding switches.
      	* src/vm-tasks.cc, src/shell/shell.cc, src/parse/libparse.cc:
      	Update accordingly.
      
      d0a692ef
    • Benoit Perrot's avatar
      2005-03-08 Benoît Perrot <benoit@lrde.epita.fr> · 4f697717
      Benoit Perrot authored
      	Remove redundant accessors from virtual machine.
      	
      	* src/vm/virtual_machine.hh (get_cpu_register, get_cpu_pc):
      	Remove.
      	* src/shell/shell.hh: Use VirtualMachine::get_cpu() instead.
      
      4f697717
  23. 06 Mar, 2005 3 commits
    • Benoit Perrot's avatar
      2005-03-06 Benoît Perrot <benoit@lrde.epita.fr> · 2c970ea6
      Benoit Perrot authored
      	Display the number of executed R,I and J-type instructions on
      	profile.
      
      	* src/vm/cpu.hh, src/vm/cpu.cc: Add an array of counters and
      	update them for each executed instruction.
      	* src/vm/virtual_machine.hh: Add accessor to CPU.
      	* src/vm-tasks.cc: Print the counters on profile.
      
      2c970ea6
    • Benoit Perrot's avatar
      2005-03-06 Benoît Perrot <benoit@lrde.epita.fr> · c50f9289
      Benoit Perrot authored
      	Specify instruction format type to distinguish register, immediate
      	and jump instructions.
      
      	* src/inst/inst.hh: Add a format attribute.
      	* dev/nolimips.xml, dev/nolimips.py, dev/inst-nodes-gen.py: 
      	Fill it.
      	
      c50f9289
    • Benoit Perrot's avatar
      2005-03-06 Benoît Perrot <benoit@lrde.epita.fr> · 5bc23e86
      Benoit Perrot authored
      	Provide `--profile' option.
      
      	* src/vm/virtual_machine.hh: Add accessor to control coprocessor.
      	* src/vm-tasks.hh, src/vm-tasks.cc: Declare and define the
      	`profile' task. For the moment, simply print on stderr the number
      	of executed cyles at the end of the program's execution.
      
      5bc23e86
  24. 15 Feb, 2005 1 commit
  25. 03 Feb, 2005 3 commits
    • Benoit Perrot's avatar
      2005-02-03 Benoît Perrot <benoit@lrde.epita.fr> · cf2790d6
      Benoit Perrot authored
      	* src/inst/data_section.hh, src/inst/data_section.cc,
      	* src/inst/text_section.hh, src/inst/text_section.cc:
      	Maintain a list of encountered (not sorted) labels. Use it to 
      	print the content of the sections.
      	* src/inst/section.hh: Remove deprecated attributes.
      	* src/inst/text_label.hh (get_iterator): Constify return value.
      
      cf2790d6
    • Benoit Perrot's avatar
      2005-02-03 Benoît Perrot <benoit@lrde.epita.fr> · 72081162
      Benoit Perrot authored
      	* src/inst/section.hh: Store the labels in a set. Use Labels to get 
      	the offset.
      	* src/inst/label.hh (deref_ptr_less): Declare and define a label 
      	pointer comparator.
      
      72081162
    • Benoit Perrot's avatar
      2005-02-03 Benoît Perrot <benoit@lrde.epita.fr> · cbd0b70b
      Benoit Perrot authored
      	Store an iterator in TextLabels.
      
      	* src/inst/text_label.hh: Do it.
      	* src/inst/text_section.hh (define_label): Move its 
      	implementation into...
      	* src/inst/text_section.cc (define_label): This file, to solve 
      	inclusion cycle.
      
      cbd0b70b