# Copyright 1997, 1999, 2004-2005, 2007-2012 Free Software Foundation,
# Inc.

# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

# Test that things still (sort of) work when compiled without -g.


set testfile nodebug
set srcfile $srcdir/$subdir/$testfile.c
set binfile $objdir/$subdir/$testfile

if [get_compiler_info] {
    return -1;
}

if [test_compiler_info "xlc-*"] {
    # By default, IBM'x xlc compiler doesn't add static variables into the symtab.
    # Use "-qstatsym" to do so. 
    set exec_opts additional_flags=-qstatsym
} else {
    set exec_opts ""
}

if  { [gdb_compile $srcfile $binfile executable $exec_opts] != "" } {
    untested "Couldn't compile $srcfile."
    return -1
}

# Start with a fresh gdb.

gdb_exit
gdb_start
gdb_reinitialize_dir $srcdir/$subdir
gdb_load $binfile

if [runto inner] then {
    
    # Expect to find global/local symbols in each of text/data/bss.
    
    # The exact format for some of this output is not necessarily
    # ideal, particularly interpreting "p top" requires a fair bit of
    # savvy about gdb's workings and the meaning of the "{}"
    # construct.  So the details maybe could be tweaked.  But the
    # basic purpose should be maintained, which is (a) users should be
    # able to interact with these variables with some care (they have
    # to know how to interpret them according to their real type,
    # since gdb doesn't know the type), but (b) users should be able
    # to detect that gdb does not know the type, rather than just
    # being told they are ints or functions returning int like old
    # versions of gdb used to do.
    
    # On alpha (and other ecoff systems) the native compilers put
    # out debugging info for non-aggregate return values of functions
    # even without -g, which should be accepted.
    # Irix5, even though it is ELF, counts as "ecoff" because it
    # encapsulates ecoff debugging info in a .mdebug section.
    # Irix6 gcc emits no debug info at all for static functions and
    # variables, so all tests involving statics fail.
    
    if {![test_compiler_info "gcc-*"]} then { setup_xfail "mips-sgi-irix5*" "mips-sgi-irix6*" }
    gdb_test "p top" \
	"\{(<(text variable|function), no debug info>|short \\(int\\)|short \\(\\))\} \[0-9a-fx]* <\\.?top(\\(int\\)|)>"
    if {![test_compiler_info "gcc-*"]} then { setup_xfail "mips-sgi-irix5*" "mips-sgi-irix6*" }
    gdb_test "whatis top" \
	"(<(text variable|function), no debug info>|short \\(int\\)|short \\(\\))"
    if {![test_compiler_info "gcc-*"]} then { setup_xfail "mips-sgi-irix6*" }
    gdb_test "ptype top" "(short|int) \\((|void|int|<non-float parameter>|<non-float parameter>, <non-float parameter>)\\)"
    
    if {![test_compiler_info "gcc-*"]} then { setup_xfail "mips-sgi-irix5*" }
    setup_xfail "mips-sgi-irix6*"
    gdb_test "p middle" \
	"\{(<(text variable|function), no debug info>|short \\(int\\)|short \\(\\))\} \[0-9a-fx]* <\\.?middle(\\(int\\)|)>"
    if {![test_compiler_info "gcc-*"]} then { setup_xfail "mips-sgi-irix5*" }
    setup_xfail "mips-sgi-irix6*"
    gdb_test "whatis middle" \
	"(<(text variable|function), no debug info>|short \\(int\\)|short \\(\\))"
    setup_xfail "mips-sgi-irix6*"
    gdb_test "ptype middle" "(short|int) \\((|void|int|<non-float parameter>|<non-float parameter>, <non-float parameter>)\\)"
    
    gdb_test "p dataglobal" "= 3"
    gdb_test "whatis dataglobal" \
	"<(data variable|variable), no debug info>|int"
    gdb_test "ptype dataglobal" "<(data variable|variable), no debug info>|int"
    
    # The only symbol xcoff puts out for statics is for the TOC entry.
    # Possible, but hairy, for gdb to deal.  Right now it doesn't, it
    # doesn't know the variables exist at all.
    setup_xfail "rs6000*-*-aix*"
    setup_xfail "powerpc*-*-aix*"
    if [test_compiler_info "gcc-*"] {
        setup_xfail "mips-sgi-irix6*"
    } else {
        setup_xfail "hppa*-*-hpux*"
    }

    gdb_test "p datalocal" "= 4"

    setup_xfail "rs6000*-*-aix*"
    setup_xfail "powerpc*-*-aix*"
    if [test_compiler_info "gcc-*"] {
        setup_xfail "mips-sgi-irix6*"
    } else {
        setup_xfail "hppa*-*-hpux*"
    }

    gdb_test "whatis datalocal" "<(data variable|variable), no debug info>"

    setup_xfail "rs6000*-*-aix*"
    setup_xfail "powerpc*-*-aix*"
    if [test_compiler_info "gcc-*"] {
        setup_xfail "mips-sgi-irix6*"
    } else {
        setup_xfail "hppa*-*-hpux*"
    }

    gdb_test "ptype datalocal" "<(data variable|variable), no debug info>"
    gdb_test "p bssglobal" "= 0"
    gdb_test "whatis bssglobal" "<(data variable|variable), no debug info>|int"
    gdb_test "ptype bssglobal" "<(data variable|variable), no debug info>|int"
    
    setup_xfail "rs6000*-*-aix*"
    setup_xfail "powerpc*-*-aix*"
    if [test_compiler_info "gcc-*"] {
        setup_xfail "mips-sgi-irix6*"
    } else {
        setup_xfail "hppa*-*-hpux*"
    }

    gdb_test "p bsslocal" "= 0"

    setup_xfail "rs6000*-*-aix*"
    setup_xfail "powerpc*-*-aix*"
    if [test_compiler_info "gcc-*"] {
        setup_xfail "mips-sgi-irix6*"
    } else {
        setup_xfail "hppa*-*-hpux*"
    }

    gdb_test "whatis bsslocal" "<(data variable|variable), no debug info>"

    setup_xfail "rs6000*-*-aix*"
    setup_xfail "powerpc*-*-aix*"
    if [test_compiler_info "gcc-*"] {
        setup_xfail "mips-sgi-irix6*"
    } else {
        setup_xfail "hppa*-*-hpux*"
    }
    gdb_test "ptype bsslocal" "<(data variable|variable), no debug info>"
    
    if [test_compiler_info "gcc-*"] {
        setup_xfail "mips-sgi-irix6*" 
    }

    gdb_test "backtrace 10" "#0.*inner.*#1.*middle.*#2.*top.*#3.*main.*" \
	"backtrace from inner in nodebug.exp"
    # Or if that doesn't work, at least hope for the external symbols
    # Commented out because if we aren't going to xfail the above test
    # ever, why bother with a weaker test?
    #gdb_test "backtrace 10" "#0.*inner.*#1.*#2.*top.*#3.*main.*" \
	#    "backtrace from inner in nodebug.exp for externals"
    
    # This test is not as obscure as it might look.  `p getenv ("TERM")'
    # is a real-world example, at least on many systems.
    if { ! [test_compiler_info "gcc-*"]} {
        setup_xfail "mips-sgi-irix6*" 
    }
    if [target_info exists gdb,cannot_call_functions] {
	setup_xfail "*-*-*" 2416
	fail "p/c array_index(\"abcdef\",2)"
    } else {
	#
	# On HP-UX, a support function (__d_plt_call) necessary to
	# implement an inferior call is normally only available when
	# the inferior was compiled with -g.  Thus, we expect this
	# testpoint to fail on HP-UX.
	if { [istarget "hppa*-hpux*"] } {
	    gdb_test_multiple "p/c array_index(\"abcdef\",2)" \
		"p/c array_index(\"abcdef\",2)" {
		    -re ".*Suggest linking executable with -g.*$gdb_prompt $" {
			pass "p/c array_index(\"abcdef\",2)" 
		    }
		    -re ".*Cannot find __wdb_call_dummy in.*end.o.*" {
			pass "p/c array_index(\"abcdef\",2)" 
		    }
		-re ".*99 'c'.*" {
		    pass "p/c array_index(\"abcdef\",2)"
		}
	    }
	} else {
	    # We need to up this because this can be really slow on some boards.
	    # (malloc() is called as part of the test).
	    set prev_timeout $timeout
	    set timeout 60
	    gdb_test {p/c array_index("abcdef",2)} " = 99 'c'"
	    set timeout $prev_timeout
	}
    }
    
    # Now, try that we can give names of file-local symbols which happen
    # to be unique, and have it still work
    if [test_compiler_info "gcc-*"] {
        setup_xfail "mips-sgi-irix6*"
    }
    if [runto middle] then {
	gdb_test "backtrace 10" "#0.*middle.*#1.*top.*#2.*main.*" \
	    "backtrace from middle in nodebug.exp"
    }
}
