On Wed, Jun 23, 2010 at 10:44 AM, Greg Clayton <[email protected]> wrote: >>>> >>> >>> This has to do with the default architecture that is currently being set. >>> We will need to set the following macros correctly for linux: >>> >>> LLDB_ARCH_DEFAULT >>> LLDB_ARCH_DEFAULT_32BIT >>> LLDB_ARCH_DEFAULT_64BIT >>> >>> These don't make as much sense in linux as they do on Mac OS X. In Mac OS X >>> we can run either 32 or 64 bit versions of apps on the same OS install if >>> it is 64 bit capable (85% of our Intel machines are 64 bit capable). >>> >>> So we probably want to set the LLDB_ARCH_DEFAULT defines correctly for the >>> current linux host OS with #ifdefs. This will then mean that you won't have >>> to set the architecture unless you are doing cross debugging. >> >> This doesn't seem like the kind of thing to handle with #ifdefs, >> shouldn't lldb be able to infer the architecture from the binary it is >> debugging? >> >> - Daniel > > On linux yes. On Mac OS X, sometimes. If we have a universal binary we > sometimes want to run i386 or x86_64, so we need to be told which one. Other > times we have only one slice and the decision is easy.
That makes sense. On OS X with universal binaries, it might make sense to pick the default based on the currently running architecture. This is similar to how the compilers work, and avoids any need for #ifdef'ing. - Daniel _______________________________________________ lldb-dev mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
