Is there some way we can make m5 link incrementally, or in other words
link subsystems together independently and then as units with each
other? The final linking step seems to take a long time with ld at 100%
cpu usage. That makes sense when you consider it's linking a screen and
a half of object files. Breaking things into smaller ".o"s that then get
linked would help because a lot of the symbols would get resolved
locally and wouldn't cause a search over the all the other object
modules. Even better would be to restrict the set of symbols that get
linked between subsystems so the search is over a smaller space as well,
as apposed to just being done fewer times, but I don't know how we could
do that without specializing to one set of tools or using obscure
features like anonymous namespaces. Anonymous namespaces might not even
help because they hide symbols by putting them in generated unique
namespaces, but the linker probably doesn't know that and would go
through them all the time anyway. This isn't broken perse, but since you
have to link every time you build and I'm on a slower machine it's very
annoying.

Gabe
_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to