@@ -52,19 +52,21 @@ void read_place(const char *place_file, const char *arch_file,
52
52
};
53
53
}
54
54
if (error) {
55
- vpr_throw (VPR_ERROR_PLACE_F, __FILE__, __LINE__,
56
- " '%s' - Bad filename specification line in placement file.\n " ,
57
- place_file);
55
+ vpr_throw (VPR_ERROR_PLACE_F, place_file, line,
56
+ " Bad filename specification line in placement file." );
58
57
}
59
- if (tokens[2 ] != arch_file) {
60
- vpr_throw (VPR_ERROR_PLACE_F, __FILE__, __LINE__,
61
- " '%s' - Architecture file that generated placement (%s) does not match current architecture file (%s).\n " ,
62
- place_file, tokens[2 ].c_str (), arch_file);
58
+
59
+ // TODO: a more robust approach would be to save the hash (e.g. SHA256) of the net/arch files and compare those, rather than
60
+ // the filepaths
61
+ if (tokens[2 ] != net_file) {
62
+ vpr_throw (VPR_ERROR_PLACE_F, place_file, line,
63
+ " Netlist file that generated placement (%s) does not match current netlist file (%s).\n " ,
64
+ tokens[2 ].c_str (), net_file);
63
65
}
64
- if (tokens[5 ] != net_file ) {
65
- vpr_throw (VPR_ERROR_PLACE_F, __FILE__, __LINE__ ,
66
- " '%s' - Netlist file that generated placement (%s) does not match current netlist file (%s).\n " ,
67
- place_file, tokens[5 ].c_str (), net_file );
66
+ if (tokens[5 ] != arch_file ) {
67
+ vpr_throw (VPR_ERROR_PLACE_F, place_file, line ,
68
+ " Architecture file that generated placement (%s) does not match current architecture file (%s).\n " ,
69
+ tokens[5 ].c_str (), arch_file );
68
70
}
69
71
70
72
/* Check array size in second line matches */
0 commit comments