On Tue, 6 Jan 2009, Heiko Carstens wrote: > On Mon, Jan 05, 2009 at 05:14:22PM -0500, Steven Rostedt wrote: > > > > On Mon, 5 Jan 2009, Sam Ravnborg wrote: > > > > > > Is this all sparc cross compiler? I'm trying to reproduce it on x86 with > > > > no avail :-( > > > > > > > > I would like to test other ways to change the macro, but to do so, I need > > > > to get a compiler that will produce the warnings that you see. What > > > > version of gcc are you using? > > > > > > I used crosstool to build a 3.4.5 gcc: > > > > Hmm, that's a pretty old compiler. I wonder if it wouldn't just help > > if we just make the branch tracer dependent on the compiler used. That is. > > > > #if defined(CONFIG_PROFILE_ALL_BRANCHES) && (__GNUC__ >= 4) > > #define if(cond) ... > > > > Or something :-/ > > FWIW, on s390 with gcc 4.3.2 and an allyesconfig I get these: > > CC arch/s390/mm/extmem.o > arch/s390/mm/extmem.c: In function 'segment_modify_shared': > arch/s390/mm/extmem.c:572: warning: 'end_addr' may be used uninitialized in this function > arch/s390/mm/extmem.c:572: warning: 'start_addr' may be used uninitialized in this function > arch/s390/mm/extmem.c: In function 'query_segment_type': > arch/s390/mm/extmem.c:259: warning: 'vmrc' may be used uninitialized in this function > > Switching off PROFILE_ALL_BRANCHES makes the warnings go away again. Now that is really interesting. Because end_addr and start_addr are initialized via functions: if (x) init_me(a, &y); else init_me(b, &y); Which actually does not make sense why turning off PROFILE_ALL_BRANCHES would affect this :-/ -- Steve -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html