Re: Sun Studio on Linux spinlock patch
От | Julius Stroffek |
---|---|
Тема | Re: Sun Studio on Linux spinlock patch |
Дата | |
Msg-id | 47D54C85.9030307@sun.com обсуждение исходный текст |
Ответ на | Re: Sun Studio on Linux spinlock patch (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Sun Studio on Linux spinlock patch
|
Список | pgsql-patches |
Tom Lane wrote: > This patch seems broken in a number of ways. Why are you removing > -DLINUX_PROFILE, for example? Are you sure you don't need -D_GNU_SOURCE? > And why add -DSUNOS4_CC, which is a Solaris-specific define (not that > we seem to be using it anywhere anymore)? Do we really have to have a > configure-time probe to detect this particular compiler? > You are right, removing -DLINUX_PROFILE seems to break profiling on linux when compiled with sun studio. I am not quite sure about the desired usage of _GNU_SOURCE and SUNOS4_CC macros. I would not expect _GNU_SOURCE to be defined when compiling sources with Sun Studio. I am not quite sure why SUNOS4_CC was supposed to be defined at all for Solaris as well. There are already enough macros defined -- "__sun" is defined on Solaris by both Sun Studio and gcc and "__SUNPRO_C" is defined by Sun Studio on both Linux and Solaris. Should we then remove _GNU_SOURCE and SUNOS4_CC macro definitions from the build scripts since they are not used at all in the source code? Configure-time probe for sun studio is required to create tas.s link to the proper file - sunstudio_x86.s (or sunstudio_sparc.s). This is done during a run of a configure script based on settings for the platform. Since these settings may vary on the same platform based on the compiler we need to have a configure-time probe. > But I guess the *real* question is why anyone would care ... what > benefit is there to using Sun's compiler on Linux? > Some tools bundled with sun studio might be used. I personally run into this when I wanted to debug postgres with sun studio ide and wanted to compile it first. It is based on netbeans, written in java so it needs a big enough memory, however it offers a great possibility to explore postgres internals during a query execution, etc. It is especially useful, if you do not know what you are interested in during a compilation. I am using this to step over join order search plugins. I mostly use Solaris for this but I switched to linux for a while. I wrote a blog with more details about this. http://blogs.sun.com/databases/entry/debugging_postgresql_backends_on_solaris There is also a screenshot showing how it looks in action http://mediacast.sun.com/users/%7Ejulo/media/pgss_debugging.png Also, there was some message a while back on pgsql-bugs from Len Zaifman requesting this as well. Cheers Julo
В списке pgsql-patches по дате отправления: