1994-06-24 11:31:16 +00:00
|
|
|
/* $Id$ */
|
1987-03-09 19:15:41 +00:00
|
|
|
/*
|
|
|
|
* (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
|
|
|
|
* See the copyright notice in the ACK home directory, in the file "Copyright".
|
|
|
|
*/
|
1984-11-26 15:04:22 +00:00
|
|
|
/* F I L E N A M E S */
|
|
|
|
|
|
|
|
/* The names of the input files of every phase are passed as
|
|
|
|
* arguments to the phase. First come the input file names,
|
|
|
|
* then the output file names. We use a one-letter convention
|
|
|
|
* to denote the type of file:
|
|
|
|
* p: procedure table file
|
|
|
|
* d: data table file
|
|
|
|
* l: EM text file (lines of EM instructions)
|
|
|
|
* b: basic block file (Control Flow Graph file)
|
|
|
|
*/
|
|
|
|
|
2016-08-21 20:01:19 +00:00
|
|
|
struct files
|
|
|
|
{
|
|
|
|
/* Input files */
|
1984-11-26 15:04:22 +00:00
|
|
|
|
2016-08-21 20:01:19 +00:00
|
|
|
const char* pname_in;
|
|
|
|
const char* dname_in;
|
|
|
|
const char* lname_in;
|
|
|
|
const char* bname_in;
|
1984-11-26 15:04:22 +00:00
|
|
|
|
2016-08-21 20:01:19 +00:00
|
|
|
/* Output files */
|
1984-11-26 15:04:22 +00:00
|
|
|
|
2016-08-21 20:01:19 +00:00
|
|
|
const char* pname_out;
|
|
|
|
const char* dname_out;
|
|
|
|
const char* lname_out;
|
|
|
|
const char* bname_out;
|
1984-11-26 15:04:22 +00:00
|
|
|
|
2016-08-21 20:01:19 +00:00
|
|
|
/* The rest of the arguments. */
|
|
|
|
|
2018-03-08 23:51:07 +00:00
|
|
|
char * const *argv;
|
2016-08-21 20:01:19 +00:00
|
|
|
int argc;
|
|
|
|
};
|
|
|
|
|
2018-03-08 23:51:07 +00:00
|
|
|
struct files* findfiles(int argc, char * const *argv);
|
1984-11-26 15:04:22 +00:00
|
|
|
|
2017-11-15 21:29:27 +00:00
|
|
|
FILE *openfile(const char *name, const char *mode);
|
|
|
|
/*
|
1984-11-26 15:04:22 +00:00
|
|
|
* Open a file with the given name
|
|
|
|
* and mode; aborts if the file
|
|
|
|
* cannot be opened.
|
|
|
|
*/
|