Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-dev] MI varobj cache


current DSF-GDB has a cache for MI variable objects, MIVariableManager.LRUVariableCache. I see its size is 1000,
and it counts not just root variable objects, but also children. That leads to couple of problems:

- There are more registers than that on my target, and they all can reasonably change between two stops, so
  it will thrash this cache
- The varobjs will be likely created in a special way, so if the cache decides to delete a varobj,
  there won't be a way to recreate it (unless I modify GDB even more).

I can't quite change cache size, since it's private static field in a private class. Should it be more

I can't mark a varobj as precious, so as to prevent any garbage collection. Would that be good idea?

Why do we actually need this cache in the first place?


[FWIW, the 'special-way' is some variant of -var-registers,]

Vladimir Prus
CodeSourcery / Mentor Graphics

Back to the top