Changeset 2f11c36 in rtems-tools
- Timestamp:
- 10/15/15 10:06:05 (7 years ago)
- Branches:
- 4.10, 5, master
- Children:
- 0382b68
- Parents:
- f11d18b
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
linkers/rtems-tld.cpp
rf11d18b r2f11c36 1235 1235 c.write_line(""); 1236 1236 1237 if (sig.has_args () || (sig.has_ret () && !generator_.ret_trace.empty ())) 1237 std::string ds; 1238 std::string des; 1239 std::string drs; 1240 bool ds_added = false; 1241 bool des_added = false; 1242 bool drs_added = false; 1243 ds = "#define FUNC_DATA_SIZE_" + sig.name + " ("; 1244 des = "#define FUNC_DATA_ENTRY_SIZE_" + sig.name + " ("; 1245 drs = "#define FUNC_DATA_RET_SIZE_" + sig.name + " ("; 1246 1247 if (sig.has_args ()) 1238 1248 { 1239 std::string ds; 1240 std::string des; 1241 std::string drs; 1242 bool ds_added = false; 1243 bool des_added = false; 1244 bool drs_added = false; 1245 ds = "#define FUNC_DATA_SIZE_" + sig.name + " ("; 1246 des = "#define FUNC_DATA_ENTRY_SIZE_" + sig.name + " ("; 1247 drs = "#define FUNC_DATA_RET_SIZE_" + sig.name + " ("; 1248 if (sig.has_args ()) 1249 { 1250 for (size_t a = 0; a < sig.args.size (); ++a) 1251 { 1252 if (ds_added) 1253 ds += " + "; 1254 else 1255 ds_added = true; 1256 if (des_added) 1257 des += " + "; 1258 else 1259 des_added = true; 1260 ds += "sizeof(" + sig.args[a] + ')'; 1261 des += "sizeof(" + sig.args[a] + ')'; 1262 } 1263 } 1264 if (sig.has_ret () && !generator_.ret_trace.empty ()) 1249 for (size_t a = 0; a < sig.args.size (); ++a) 1265 1250 { 1266 1251 if (ds_added) … … 1268 1253 else 1269 1254 ds_added = true; 1270 if (d rs_added)1271 d rs += " + ";1255 if (des_added) 1256 des += " + "; 1272 1257 else 1273 d rs_added = true;1274 ds += "sizeof(" + sig. ret+ ')';1275 d rs += "sizeof(" + sig.ret+ ')';1258 des_added = true; 1259 ds += "sizeof(" + sig.args[a] + ')'; 1260 des += "sizeof(" + sig.args[a] + ')'; 1276 1261 } 1277 if (!ds_added)1278 ds += '0';1279 ds += ')';1280 if (!des_added)1281 des += '0';1282 des += ')';1283 if (!drs_added)1284 drs += '0';1285 drs += ')';1286 c.write_line(ds);1287 c.write_line(des);1288 c.write_line(drs);1289 1262 } 1263 if (sig.has_ret () && !generator_.ret_trace.empty ()) 1264 { 1265 if (ds_added) 1266 ds += " + "; 1267 else 1268 ds_added = true; 1269 if (drs_added) 1270 drs += " + "; 1271 else 1272 drs_added = true; 1273 ds += "sizeof(" + sig.ret + ')'; 1274 drs += "sizeof(" + sig.ret + ')'; 1275 } 1276 if (!ds_added) 1277 ds += '0'; 1278 ds += ')'; 1279 if (!des_added) 1280 des += '0'; 1281 des += ')'; 1282 if (!drs_added) 1283 drs += '0'; 1284 drs += ')'; 1285 c.write_line(ds); 1286 c.write_line(des); 1287 c.write_line(drs); 1290 1288 1291 1289 c.write_line(sig.decl () + ";");
Note: See TracChangeset
for help on using the changeset viewer.