2003-01-19 Bernhard Held <bernhard@bernhardheld.de>
- * moved tinitalk to device/examples/ds390
+ * src/SDCCmain.c (linkEdit): rename mem and map files even in case of failure
+ * src/SDCCpeeph.c (replaceRule): fix bug #663503
+ * support/regression/Makefile: separate temp files for ports
+ * support/regression/generate-cases.py: separate temp files for ports
+ * src/mcs51/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
+ * src/ds390/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
+
+2003-01-19 Bernhard Held <bernhard@bernhardheld.de>
+
+ * moved tinitalk to device/examples/ds390
2003-01-14 Bernhard Held <bernhard@bernhardheld.de>
* src/SDCCmain.c (main): port->finaliseOptions() moved for z80 linking
* src/SDCCutil.c (join): ugly bug: missing '\0'
- * as/mcs51/lkmem.c (summary): sp on address 7 is save
+ * as/mcs51/lkmem.c (summary): sp on address 7 is safe
2003-01-11 Bernhard Held <bernhard@bernhardheld.de>
* support/regression/tests/bug-524691.c: made it a little less shy
- * src/SDCCast.c (decorateType): fixed bug #524697
+ * src/SDCCast.c (decorateType): fixed bug #524697
* src/SDCCast.c: made some lineno improvements
{
FILE *lnkfile;
char *segName, *c;
- int i;
+ int i, system_ret;
/* first we need to create the <filename>.lnk file */
sprintf (scratchFileName, "%s.lnk", dstFileName);
buildCmdLine2 (buffer, port->linker.mcmd);
}
- if (my_system (buffer))
- {
- exit (1);
- }
+ system_ret = my_system (buffer);
/* TODO: most linker don't have a -o parameter */
/* -o option overrides default name? */
if (fullDstFileName)
strcpy (q, "mem");
rename (scratchFileName, fullDstFileName);
}
+ if (system_ret)
+ {
+ exit (1);
+ }
}
/*-----------------------------------------------------------------*/
(*shead)->prev->next = lhead;
lhead->prev = (*shead)->prev;
}
- else
- *shead = lhead;
+ *shead = lhead;
/* now for the tail */
if (stail && stail->next)
{
}
replace {
- mov r%1,a
- mov a,ar%1
+ sjmp %1
+%2:
+ mov %3,%4
+%5:
+ ret
} by {
- mov r%1,a
- ; Peephole 237 removed redundant move
+ ; Peephole 237a removed sjmp to ret
+ ret
+%2:
+ mov %3,%4
+%1:
+ ret
}
+replace {
+ sjmp %1
+%2:
+ mov %3,%4
+ mov dpl,%6
+ mov dph,%7
+%5:
+ ret
+} by {
+ ; Peephole 237b removed sjmp to ret
+ ret
+%2:
+ mov %3,%4
+ mov dpl,%6
+ mov dph,%7
+%1:
+ ret
+}
}
replace {
- mov r%1,a
- mov a,ar%1
+ sjmp %1
+%2:
+ mov %3,%4
+%5:
+ ret
} by {
- mov r%1,a
- ; Peephole 237 removed redundant move
+ ; Peephole 237a removed sjmp to ret
+ ret
+%2:
+ mov %3,%4
+%1:
+ ret
}
+replace {
+ sjmp %1
+%2:
+ mov %3,%4
+ mov dpl,%6
+ mov dph,%7
+%5:
+ ret
+} by {
+ ; Peephole 237b removed sjmp to ret
+ ret
+%2:
+ mov %3,%4
+ mov dpl,%6
+ mov dph,%7
+%1:
+ ret
+}
# Rule to generate the iterations of a test suite off the soure suite.
$(PORT_CASES_DIR)/%/iterations.stamp: $(TESTS_DIR)/%.c $(GENERATE_CASES)
echo Processing $<
- rm -rf $(CASES_DIR)/$(TESTS_NAME)
- mkdir -p $(CASES_DIR)/$(TESTS_NAME)
+ rm -rf $(CASES_DIR)/$(PORT)/$(TESTS_NAME)
+ mkdir -p $(CASES_DIR)/$(PORT)/$(TESTS_NAME)
mkdir -p `dirname $@`
- python $(GENERATE_CASES) $< > /dev/null
- cp $(CASES_DIR)/$(TESTS_NAME)/*.c `dirname $@`
+ python $(GENERATE_CASES) $< $(CASES_DIR)/$(PORT) > /dev/null
+ cp $(CASES_DIR)/$(PORT)/$(TESTS_NAME)/*.c `dirname $@`
touch $@
# Rule linking the combined results log to all of the files in the
# Globals
# Directory that the generated files should be placed into
-outdir = 'gen'
+outdir = sys.argv[2]
# Start of the test function table definition
testfuntableheader = """
os.remove(self.tmpname)
# Check and parse the command line arguments
-if len(sys.argv) < 2:
+if len(sys.argv) < 3:
# PENDING: How to throw an error?
- print "usage: generate-cases.py template.c"
+ print "usage: generate-cases.py template.c outdir"
# Input name is the first arg.