1 #ifndef IVL_fpga_priv_H
2 #define IVL_fpga_priv_H
3 /*
4  * Copyright (c) 2001-2014 Stephen Williams (steve@icarus.com)
5  *
6  *    This source code is free software; you can redistribute it
7  *    and/or modify it in source code form under the terms of the GNU
8  *    General Public License as published by the Free Software
9  *    Foundation; either version 2 of the License, or (at your option)
10  *    any later version.
11  *
12  *    This program is distributed in the hope that it will be useful,
13  *    but WITHOUT ANY WARRANTY; without even the implied warranty of
14  *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  *    GNU General Public License for more details.
16  *
17  *    You should have received a copy of the GNU General Public License
18  *    along with this program; if not, write to the Free Software
19  *    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20  */
21 
22 # include  <stdio.h>
23 # include  "device.h"
24 
25 /* This is the opened xnf file descriptor. It is the output that this
26    code generator writes to, whether the format is XNF or EDIF. */
27 extern FILE*xnf;
28 
29 extern int show_scope_gates(ivl_scope_t net, void*x);
30 
31 
32 extern device_t device;
33 
34 extern const char*part;
35 extern const char*arch;
36 
37 /*
38  * Attribute lookup, should this be provided in ivl_target.h?
39  */
40 int scope_has_attribute(ivl_scope_t s, const char *name);
41 
42 /*
43  * These are mangle functions.
44  */
45 extern void xnf_mangle_logic_name(ivl_net_logic_t net, char*buf, size_t nbuf);
46 extern void xnf_mangle_lpm_name(ivl_lpm_t net, char*buf, size_t nbuf);
47 
48 extern const char*xnf_mangle_nexus_name(ivl_nexus_t net);
49 
50 #endif /* IVL_fpga_priv_H */
51