Commit Graph

32 Commits

Author SHA1 Message Date
Zoltan Somogyi
ce64b053ce Link a smaller number of modules at a time to the stage2 directories.
Estimated hours taken: 0.1

bootcheck:
	Link a smaller number of modules at a time to the stage2 directories.
	This ought to fix the problem with muse's argument vector overflowing.

test_mercury:
	Fix a comment.
1996-06-11 02:58:02 +00:00
Fergus Henderson
370fcc7bc3 (Temporarily) add --lookup-switch-req-density 101 to disable
Estimated hours taken: 0.25

tools/test_mercury:
	(Temporarily) add --lookup-switch-req-density 101 to disable
	lookup switches, so that Tom's change will bootstrap check.
1996-06-10 08:22:26 +00:00
Fergus Henderson
261fd5f91f Add the `test_mercury' script used by the nightly tests
Estimated hours taken: 0.25

Add the `test_mercury' script used by the nightly tests
to the CVS repository.
1996-06-02 13:52:07 +00:00
Zoltan Somogyi
7a3f8d3a1c Link to absolute, not relative path names, since relative path names
Estimated hours taken: 2

bootcheck, binary, linear:
	Link to absolute, not relative path names, since relative path names
	do not work back across symbolic links.

binary, linear:
	Allow the user to give an initial list of suspects.

assemble, binary, linear:
	Allow negative searches, i.e. searches in which the base version is
	the bad version and we want to see which module "fixes" the problem
	caused by the other modules, as opposed to normal searches in which
	we are looking for the module that introduces the problem.
1996-05-29 11:00:24 +00:00
Zoltan Somogyi
e333b692d8 A new tool for doing linear searches on the compiler.
Estimated hours taken: 0.5

A new tool for doing linear searches on the compiler.
1996-05-21 02:13:48 +00:00
Zoltan Somogyi
88927c049c Fix a stupid oversight.
Estimated hours taken: 0.1

binary_step:
	Fix a stupid oversight.
1996-05-14 07:01:45 +00:00
Fergus Henderson
5ae846242a Replace shift 3' with shift; shift; shift', since the former
Estimated hours taken: 0.1

tools/assemble:
	Replace `shift 3' with `shift; shift; shift', since the former
	doesn't work on ULTRIX.
1996-05-13 06:15:56 +00:00
Zoltan Somogyi
b221d25b52 <overview or general description of changes>
Estimated hours taken: 1

<overview or general description of changes>

<directory>/<file>:
	<detailed description of changes>
1996-05-13 05:10:23 +00:00
Zoltan Somogyi
4f3bf86a00 I moved the scripts bootcheck, binary, binary_step, divide and assemble
Estimated hours taken: 0.5

I moved the scripts bootcheck, binary, binary_step, divide and assemble
into the tools subdirectory from the main mercury directory.
I also added the auxiliary scripts appears, cleanint and half.

I modified binary and binary_step to compare stage3 with stage2.ok,
and only pass a stage2 compiler if the comparison finds no differences.
This requires that the Mmake.params files be copied, not linked, from
the top level's Mmake.stage2.params. The old behavior (no comparison)
is still available; just specify -c (compile-only).
1996-05-12 04:39:01 +00:00
Zoltan Somogyi
a2a90c0674 Mention --inlining.
Estimated hours taken: 0.1

NEWS:
	Mention --inlining.

bootcheck:
	If there is a file named Mmake.stage.params in the top-level directory,
	copy this to become Mmake.params in the stage[23] directories. This
	makes it much easier to have the stage1 compiler compiled with
	different optimization levels (or other options) than you want to
	use for a bootcheck.
1996-05-10 09:48:31 +00:00
Zoltan Somogyi
4375a108e2 Fix problems with spaces in the values of variables,
Estimated hours taken: 0.1

binary:
	Fix problems with spaces in the values of variables,
	by removing the spaces.
1996-04-26 06:25:27 +00:00
Zoltan Somogyi
0d6497f527 Fix missing quote bug.
Estimated hours taken: 0.1

binary:
	Fix missing quote bug.
1996-04-26 02:15:40 +00:00
Zoltan Somogyi
ea788e0453 Rename BRANCH_DELAY_SLOT to HAVE_DELAY_SLOT.
Estimated hours taken: 6

configure.in:
	Rename BRANCH_DELAY_SLOT to HAVE_DELAY_SLOT.

bootcheck:
	Add a new option, -r. If given, this makes a copy of the runtime
	directory instead of linking to it in stage[23]. This allows the
	stage[23] versions to use a different grade than stage1.

	Another change is that we now remake only the library and compiler
	dependencies, but not the profiler dependencies.

binary:
	A shell script to find code generation and optimization bugs by
	performing binary search. It depends on the existence of two
	directories, stage2.ok and stage2.bad, containing correct and buggy
	versions of stage2, and tries different mixes of .c code from each
	until it locates the offending part of the offending .c file.

	Note that this script has so far been tested only in pieces.

binary_step:
	Check whether a particular mix of .c files from the ok and bad
	directories is able to build a stage3 compiler. It doesn't check
	for differences from stage2, since stage2 is a patchwork.

divide:
	Divide a .c file into its parts.

assemble:
	Assemble a .c file, with the specified parts coming from the .c file
	in stage2.bad and the others from stage2.ok.

NOTE: these scripts require some other auxiliary scripts. I will put these
into /usr/local/contrib when it is created on cyclone. In the meantime,
they are in ~zs/bin/script.
1996-04-24 00:58:09 +00:00
Fergus Henderson
26bf5406e4 Change it so that it doesn't output some of the less useful but
Estimated hours taken: 0.1

mercury/bootcheck:
	Change it so that it doesn't output some of the less useful but
	more verbose trace messages when linking the stage[23] directories.
1996-04-23 18:32:45 +00:00
Fergus Henderson
23a7d041a5 Use relative symbolic links, rather than absolute ones.
Estimated hours taken: 0.15

mercury/bootcheck:
	Use relative symbolic links, rather than absolute ones.
	This avoids overflowing limits on command line lengths on IRIX 5.3.
1996-03-18 15:50:01 +00:00
Zoltan Somogyi
78e655c53b Remove the link of *.m.in, since there have been no files with
Estimated hours taken: 0.02

bootcheck:
	Remove the link of *.m.in, since there have been no files with
	such names for quite a while.
1996-03-05 23:54:12 +00:00
Fergus Henderson
6c317a4429 Change things so that in the usual case Mmake does not keep the
automatically generated `.c' files lying around.  (The aim of this
change is to cut down on disk space usage!)

mercury/bootcheck:
	Pass `RM_C=:' to mmake when making the stage2 compiler, so
	that the intermediate `.c' files don't get removed.
1995-11-24 10:21:55 +00:00
Fergus Henderson
5762220288 Simplify the code. Quite a bit of this file was just to
bootcheck:
	Simplify the code.  Quite a bit of this file was just to
	work-around an old bug in `mc --generate-dependencies'.
1995-09-09 03:57:16 +00:00
Zoltan Somogyi
1d4912b12b Run a make depend in the profiler directory separately, since for some
reason mercury_profiler.dep was getting the wrong contents every time.

Avoid linking *.m.in to the new library directories, since there are
no files matching this pattern there, and sh mishandles filename expansion
in such circumstances.
1995-08-26 12:41:20 +00:00
Fergus Henderson
f08a7ea323 Don't use `getopts' since it isn't portable.
bootcheck:
	Don't use `getopts' since it isn't portable.
	Add long versions of all the options.
	Add a -h/--help option and improve the help message.
	Add new --keep-stage-2 and --keep-stage-3 options.
1995-08-24 06:30:05 +00:00
Fergus Henderson
9cbf8c699e Fix cut-and-paste error.
bootcheck:
	Fix cut-and-paste error.
1995-07-14 17:37:28 +00:00
Fergus Henderson
43ef6c0188 Link the `profiler' directory to stage2 and stage3.
bootcheck:
	Link the `profiler' directory to stage2 and stage3.
	Also make sure all the stage3 links point to stage2 not stage1.
1995-07-14 13:16:19 +00:00
Thomas Conway
b693af1804 Added ln -s's for the .m.in files
bootcheck:
	Added ln -s's for the .m.in files
1995-07-14 01:01:19 +00:00
Fergus Henderson
398b1aa4b0 Link the .nl files into the stage 2 library directory, so that
bootcheck:
	Link the .nl files into the stage 2 library directory, so that
	`mmake install' will work from there.
1995-06-24 01:16:25 +00:00
Thomas Conway
8fc01b3ae8 Use "$0" rather than "bcheck" in usage message.
bootcheck:
	Use "$0" rather than "bcheck" in usage message.
	Also link library.init into the stage2 & stage3 directories,
	since it is used to create mercury_compile_init.c now.
1995-06-22 15:44:52 +00:00
Zoltan Somogyi
bf66289ffc Do not make all of stage3. The .c files of the library and the compiler
bootcheck:
	Do not make all of stage3. The .c files of the library and the compiler
	are enough.
1995-06-22 02:37:33 +00:00
Fergus Henderson
0b670a4e76 Only compare the .c files between stage2 and stage3, not the
bootcheck:
	Only compare the .c files between stage2 and stage3, not the
	binaries, so that we can collect a meaningful exit status for
	use by the regression test script.  Also avoid a little bit of
	code duplication.
1995-06-20 14:27:14 +00:00
Zoltan Somogyi
6ed32afec4 Changes to allow work on the compiler to proceed during while
bootcheck:
	Changes to allow work on the compiler to proceed during while
	bootcheck is running.
1995-06-17 03:48:04 +00:00
Fergus Henderson
20439e44f9 Don't pass -jN to the toplevel mmake, instead pass MMAKEFLAGS=-j4.
bootcheck:
	Don't pass -jN to the toplevel mmake, instead pass MMAKEFLAGS=-j4.
1995-06-05 03:05:48 +00:00
Fergus Henderson
3cc1df5e06 When creating the stage 2 and 3 compiler and library
mercury/bootcheck:
	When creating the stage 2 and 3 compiler and library
	directories, use `ln -s' rather than `cp'.
1995-05-18 06:31:29 +00:00
Zoltan Somogyi
1ee9ac5eec Print out the time at the start and at the end.
bootcheck:
	Print out the time at the start and at the end.
	(A bootcheck -j4 on sunday required only 48 minutes of elapsed time!)
1995-05-08 06:16:42 +00:00
Zoltan Somogyi
630b56da1f Renamed bcheck to botcheck to avoid conflict with the "batch interface to
the Runtime Checking (RTC) feature of dbx(1)".

Mmake:
	modifications to visit the new subdirectory util.

Mmake.common:
	modification to reflect the new name of the system module io_rt.
1995-05-06 07:25:09 +00:00