# Copyright (C) 2007, 2008 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/>.

#  This file was written by Wu Zhou. (woodzltc@cn.ibm.com)

# This file is part of the gdb testsuite.  It is intended to test that
# gdb could correctly handle decimal floating point introduced in IEEE 754R.

if $tracelevel then {
  strace $tracelevel
}

set testfile "dfp-test"
set srcfile ${testfile}.c
set binfile ${objdir}/${subdir}/${testfile}

# Try to compile the test case.  If we can't, assume the
# toolchain does not yet provide DFP support and bail out.
if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {quiet debug}] != "" } {
    verbose "Skipping DFP tests."
    return -1
}

gdb_exit
gdb_start
gdb_reinitialize_dir $srcdir/$subdir
gdb_load ${binfile}

if ![runto_main] then {
    perror "couldn't run to breakpoint"
    continue
}

# Detect the size of the target's basic types (from gdb.base/long_long.exp).

proc get_valueof { fmt exp default } {
    global gdb_prompt
    send_gdb "print${fmt} ${exp}\n"
    gdb_expect {
	-re "\\$\[0-9\]* = (\[-\]*\[0-9\]*).*$gdb_prompt $" {
	    set val $expect_out(1,string)
	}
	timeout {
	    set val ${default}
	}
    }
    return ${val}
}

proc get_sizeof { type default } {
    return [get_valueof "/d" "sizeof (${type})" $default]
}

set sizeof_long [get_sizeof "long" 4]

proc d32_set_tests {} {

    gdb_test "p d32=123.45df" " = 123.45"
    gdb_test "p d32=12345.df" " = 12345"
    gdb_test "p d32=12345.67df" " = 12345.67"
    gdb_test "p d32=1234567.df" " = 1234567"

    gdb_test "p d32=1.234567E0df" " = 1.234567"
    gdb_test "p d32=1.234567E10df" " = 1.234567E\\+10"
    gdb_test "p d32=1.234567E+96df" " = 1.234567E\\+96"

    # Test that gdb could handle the max, normalized min and subnormalized min.
    gdb_test "p d32=9.999999E96df" " = 9.999999E\\+96"
    gdb_test "p d32=1.0E-95df" " = 1.0E\\-95"
    gdb_test "p d32=1.E-101df" " = 1E\\-101"
    gdb_test "p d32=0.000001E-95df" " = 1E\\-101"

    # Test that gdb could detect coefficient/exponent out of range.
    # The coefficient out of range will be rounded to its nearest value.
    # And the exponent out of range will be handled as infinity.
    gdb_test "p d32=1.2345678df" " = 1.234568" "1.2345678 is rounded to 1.234568"
    gdb_test "p d32=1.0E-101df" " = 1E-101" "1.0E-101 is rounded to 1E-101"
    gdb_test "p d32=1.234567E+97df" " = Infinity" "1.234567E+97 is Infinity"

    # Test that gdb could detect the errors in the string representation of _Decimal32
    gdb_test "p d32=12345.df" " = 12345" "12345. is a valid number"
    gdb_test "p d32=12345df" ".*Invalid number.*" "12345 is an invalid number"
    gdb_test "p d32=1.23Edf" ".*Conversion syntax.*" "1.23E is an invalid number"
    gdb_test "p d32=1.23E45Adf" ".*Conversion syntax.*" "1.23E45A is an invalid number"
}

proc d64_set_tests {} {

    gdb_test "p d64=123.45dd" " = 123.45"
    gdb_test "p d64=12345.dd" " = 12345"
    gdb_test "p d64=12345.67dd" " = 12345.67"
    gdb_test "p d64=1.234567890123456dd" " = 1.234567890123456"

    gdb_test "p d64=1.234567890123456E10dd" " = 12345678901.23456"
    gdb_test "p d64=1.234567890123456E100dd" " = 1.234567890123456E\\+100"
    gdb_test "p d64=1.234567890123456E384dd" " = 1.234567890123456E\\+384"

    # Test that gdb could handle the max, normalized min and subnormalized min.
    gdb_test "p d64=9.999999999999999E384dd" " = 9.999999999999999E\\+384"
    gdb_test "p d64=1.E-383dd" " = 1E\\-383"
    gdb_test "p d64=1.E-398dd" " = 1E\\-398"
    gdb_test "p d64=0.000000000000001E-383dd" " = 1E\\-398"

    # Test that gdb could detect coefficient/exponent out of range.
    # The coefficient out of range will be rounded to its nearest value.
    # And the exponent out of range will be handled as infinity.
    gdb_test "p d64=1.2345678901234567dd" " = 1.234567890123457" "1.2345678901234567 is rounded to 1.234567890123457"
    gdb_test "p d64=9.9999999999999999E384dd" " = Infinity" "d64=9.9999999999999999E384 is Infinity"
    gdb_test "p d64=1.234567890123456E385dd" " = Infinity" "d64=1.234567890123456E385 is Infinity"

    # Test that gdb could detect the errors in the string representation of _Decimal64
    gdb_test "p d64=12345dd" ".*Invalid number.*" "12345dd is an invalid number"
    gdb_test "p d64=1.23Edd" ".*Conversion syntax.*" "1.23E is an invalid number"
    gdb_test "p d64=1.23E45Add" ".*Conversion syntax.*" "1.23E45A is an invalid number"
}

proc d128_set_tests {} {

    gdb_test "p d128=123.45dl" " = 123.45"
    gdb_test "p d128=12345.dl" " = 12345"
    gdb_test "p d128=12345.67dl" " = 12345.67"
    gdb_test "p d128=1.234567890123456789012345678901234dl" " = 1.234567890123456789012345678901234"

    gdb_test "p d128=1.234567890123456E10dl" " = 12345678901.23456"
    gdb_test "p d128=1.234567890123456E100dl" " = 1.234567890123456E\\+100"
    gdb_test "p d128=1.234567890123456E1000dl" " = 1.234567890123456E\\+1000"

    # Test that gdb could handle the max, normalized min and subnormalized min.
    gdb_test "p d128=9.999999999999999999999999999999999E6144dl" " = 9.999999999999999999999999999999999E\\+6144"
    gdb_test "p d128=1.E-6143dl" " = 1E\\-6143"
    gdb_test "p d128=1.E-6176dl" " = 1E\\-6176"
    gdb_test "p d128=0.000000000000000000000000000000001E-6143dl" " = 1E\\-6176"

    # Test that gdb could detect coefficient/exponent out of range.
    # The coefficient out of range will be rounded to its nearest value.
    # And the exponent out of range will be handled as infinity.
    gdb_test "p d128=1.2345678901234567890123456789012345dl" "1.234567890123456789012345678901234" "1.2345678901234567890123456789012345 is rounded to 1.234567890123456789012345678901234"
    gdb_test "p d128=1.234567890123456E6145dl" "Infinity" "d128=1.234567890123456E6145 is Infinity"

    # Test that gdb could detect the errors in the string representation of _Decimal128
    gdb_test "p d128=12345dl" ".*Invalid number.*" "12345dl is an invalid number"
    gdb_test "p d128=1.23Edl" ".*Conversion syntax.*" "1.23E is an invalid number"
    gdb_test "p d128=1.23E45Adl" ".*Conversion syntax.*" "1.23E45A is an invalid number"
}

# Different tests on 32-bits decimal floating point, including the printing
# of finite numbers, infinite and NaN, and also the setting of different
# decimal value.

if [gdb_test "next" \
    ".*Positive infd32.*" \
    "next after initializing d32"] then { gdb_suppress_tests }
gdb_test "print d32" "1.2345" "d32 is initialized to 1.2345"

if [gdb_test "next" \
    ".*Negative infd32.*" \
    "next after assigning builtin infinity to d32"] then { gdb_suppress_tests }
gdb_test "print d32" "Infinity" "d32 is positive Infinity"

if [gdb_test "next" \
    ".*__builtin_nand32.*" \
    "next after assigning negative builtin infinity to d32"] then { gdb_suppress_tests }
gdb_test "print d32" "-Infinity" "d32 is negative Infinity"

if [gdb_test "next" \
    ".*d64 = 1.2345.*" \
    "next after assigning builtin NaN to d32"] then { gdb_suppress_tests }
gdb_test "print d32" "NaN" "d32 is NaN"

d32_set_tests


# Different tests on 64-bits decimal floating point, including the display
# of finite number, infinite and NaN, and also the setting of different
# decimal value.

if [gdb_test "next" \
    ".*Positive infd64.*" \
    "next after initializing d64"] then { gdb_suppress_tests }
gdb_test "print d64" "1.2345" "d64 is initialized to 1.2345"

if [gdb_test "next" \
    ".*Negative infd64.*" \
    "next after assigning builtin infinity to d64"] then { gdb_suppress_tests }
gdb_test "print d64" "Infinity" "d64 is positive Infinity"

if [gdb_test "next" \
    ".*__builtin_nand64.*" \
    "next after assigning negative builtin infinity to d64"] then { gdb_suppress_tests }
gdb_test "print d64" "-Infinity" "d64 is negative Infinity"

if [gdb_test "next" \
    ".*d128 = 1.2345.*" \
    "next after assigning builtin NaN to d64"] then { gdb_suppress_tests }
gdb_test "print d64" "NaN" "d64 is NaN"

d64_set_tests


# Different tests on 128-bits decimal floating point, including the display
# of finite number, infinite and NaN, and also the setting of different
# decimal value.

if [gdb_test "next" \
    ".*Positive infd128.*" \
    "next after initializing d128"] then { gdb_suppress_tests }
gdb_test "print d128" "1.2345" "d128 is initialized to 1.2345"

d128_set_tests

if [gdb_test "next" \
    ".*Negative infd128.*" \
    "next after assigning builtin infinity to d128"] then { gdb_suppress_tests }
gdb_test "print d128" "Infinity" "d128 is positive Infinity"

if [gdb_test "next" \
    ".*__builtin_nand128.*" \
    "next after assigning negative builtin infinity to d128"] then { gdb_suppress_tests }
gdb_test "print d128" "-Infinity" "d128 is negative Infinity"

if [gdb_test "next" \
    ".*arg0_32.*" \
    "next after assigning builtin NaN to d128"] then { gdb_suppress_tests }
gdb_test "print d128" "NaN" "d128 is NaN"

# The following tests are intended to verify that gdb can correctly handle
# DFP types in function arguments.

gdb_breakpoint arg0_32
gdb_continue_to_breakpoint "entry to arg0_32"
gdb_test "backtrace" ".*arg0_32 \\(arg0=0.1, arg1=1.0, arg2=2.0, arg3=3.0, arg4=4.0, arg5=5.0\\).*" "backtrace at arg0_32"

gdb_breakpoint arg0_64
gdb_continue_to_breakpoint "entry to arg0_64"
gdb_test "backtrace" ".*arg0_64 \\(arg0=0.1, arg1=1.0, arg2=2.0, arg3=3.0, arg4=4.0, arg5=5.0\\).*" "backtrace at arg0_64"

gdb_breakpoint arg0_128
gdb_continue_to_breakpoint "entry to arg0_128"
gdb_test "backtrace" ".*arg0_128 \\(arg0=0.1, arg1=1.0, arg2=2.0, arg3=3.0, arg4=4.0, arg5=5.0\\).*" "backtrace at arg0_128"

# Test calling inferior function with DFP arguments or return value.

gdb_test "call arg0_32 (1.2df, 2.2df, 3.2df, 4.2df, 5.2df, 6.2df)" "Breakpoint.*arg0_32.*" "Call function with correct _Decimal32 arguments."
gdb_test "backtrace 1" "\n#\[0-9\]+  arg0_32 \\(arg0=1.2, arg1=2.2, arg2=3.2, arg3=4.2, arg4=5.2, arg5=6.2\\).*" "Backtrace function with correct _Decimal32 arguments."
gdb_test "finish" " = 1.2" "Correct _Decimal32 return value from called function."

gdb_test "call arg0_64 (1.2dd, 2.2dd, 3.2dd, 4.2dd, 5.2dd, 6.2dd)" "Breakpoint.*arg0_64.*" "Call function with correct _Decimal64 arguments."
gdb_test "backtrace 1" "\n#\[0-9\]+  arg0_64 \\(arg0=1.2, arg1=2.2, arg2=3.2, arg3=4.2, arg4=5.2, arg5=6.2\\).*" "Backtrace function with correct _Decimal64 arguments."
gdb_test "finish" " = 1.2" "Correct _Decimal64 return value from called function."

gdb_test "call arg0_128 (1.2dl, 2.2dl, 3.2dl, 4.2dl, 5.2dl, 6.2dl)" "Breakpoint.*arg0_128.*" "Call function with correct _Decimal128 arguments."
gdb_test "backtrace 1" "\n#\[0-9\]+  arg0_128 \\(arg0=1.2, arg1=2.2, arg2=3.2, arg3=4.2, arg4=5.2, arg5=6.2\\).*" "Backtrace function with correct _Decimal128 arguments."
gdb_test "finish" " = 1.2" "Correct _Decimal128 return value from called function."

gdb_test "call decimal_dec128_align (double_val1, dec128_val2, double_val3, double_val4, double_val5, double_val6, double_val7, double_val8, double_val9, double_val10, double_val11, double_val12, double_val13, double_val14)" " = 1" \
  "Call function with mixed decimal float arguments TEST."

gdb_test "call decimal_mixed (dec32_val1, dec64_val1, dec128_val1)" " = 1" \
  "Call function with mixed decimal float arguments."

gdb_test "call decimal_many_args_dec32 (dec32_val1, dec32_val2, dec32_val3, dec32_val4, dec32_val5, dec32_val6, dec32_val7, dec32_val8, dec32_val9, dec32_val10, dec32_val11, dec32_val12, dec32_val13, dec32_val14, dec32_val15, dec32_val16)" " = 1" \
  "Call function with many _Decimal32 arguments."

gdb_test "call decimal_many_args_dec64 (dec64_val1, dec64_val2, dec64_val3, dec64_val4, dec64_val5, dec64_val6, dec64_val7, dec64_val8, dec64_val9, dec64_val10, dec64_val11, dec64_val12, dec64_val13, dec64_val14, dec64_val15, dec64_val16)" " = 1" \
  "Call function with many _Decimal64 arguments."

gdb_test "call decimal_many_args_dec128 (dec128_val1, dec128_val2, dec128_val3, dec128_val4, dec128_val5, dec128_val6, dec128_val7, dec128_val8, dec128_val9, dec128_val10, dec128_val11, dec128_val12, dec128_val13, dec128_val14, dec128_val15, dec128_val16)" " = 1" \
  "Call function with many _Decimal128 arguments."

gdb_test "call decimal_many_args_mixed (dec32_val1, dec32_val2, dec32_val3, dec64_val4, dec64_val5, dec64_val6, dec64_val7, dec128_val8, dec128_val9, dec128_val10, dec32_val11, dec64_val12, dec32_val13, dec64_val14, dec128_val15)" " = 1" \
  "Call function with many mixed decimal float arguments."

# The following tests are intended to verify that gdb can handle DFP types
# correctly in struct.

gdb_breakpoint [gdb_get_line_number "Exit point"]
gdb_continue_to_breakpoint "Setting a decimal struct"
gdb_test "print ds.dec32" " = 1.2345"
gdb_test "print ds.dec64" " = 1.2345"
gdb_test "print ds.dec128" " = 1.2345"

# Test expressions with DFP variables.

gdb_test "print d32 + ds.dec32" " = 1.3345"
gdb_test "print d64 + ds.dec64" " = 1.3345"
gdb_test "print d128 + ds.dec128" " = 1.3345"

# Test conversion between different _Decimal sizes.

gdb_test "ptype d64 + ds.dec32" " = volatile _Decimal64"
gdb_test "ptype d128 + ds.dec32" " = volatile _Decimal128"
gdb_test "ptype d128 + ds.dec64" " = volatile _Decimal128"

# Mixture of Decimal and integral operands
gdb_test "p d32 + 1" " = 1.1"
gdb_test "p 2 + d64" " = 2.1"
gdb_test "p ds.int4 + d128" " = 1.1"
gdb_test "ptype d32 + 1" " = volatile _Decimal32"
gdb_test "ptype ds.int4 + d128" " = volatile _Decimal128"

# Test other operations with DFP operands
gdb_test "p !d32" " = 0"
gdb_test "p !d64" " = 0"
gdb_test "p !d128" " = 0"
gdb_test "p +d32" " = 0.1"
gdb_test "p +d64" " = 0.1"
gdb_test "p +d128" " = 0.1"
gdb_test "p d64 == d128" " = 1"
gdb_test "p d128 == ds.dec32" " = 0"
gdb_test "p d128 == d32" " = 1"
gdb_test "p ds.dec32 == ds.dec64" " = 1"
gdb_test "p d32 < ds.dec32" " = 1"
gdb_test "p d64 < ds.dec64" " = 1"
gdb_test "p d128 < ds.dec128" " = 1"
gdb_test "p ds.dec32 < d32" " = 0"
gdb_test "p d64 > ds.dec64" " = 0"
gdb_test "p ds.dec128 > d128 " " = 1"
gdb_test "p d32 < ds.int4" " = 1"
gdb_test "p ds.int4 > d32" " = 1"
gdb_test "p ds.dec32 < ds.int4" " = 0"
gdb_test "p ds.int4 > ds.dec64" " = 0"
gdb_test "p ds.dec128 > ds.int4" " = 1"

# Reject operation with integral larger than 32-bits
if { ${sizeof_long} > 4 } {
  gdb_test "p d32 + ds.long8" "Conversion of large integer to a decimal floating type is not supported."
}

# Reject operation with DFP and Binary FP
gdb_test "p d64 + ds.float4" "Mixing decimal floating types with other floating types is not allowed."
gdb_test "p ds.double8 + d128" "Mixing decimal floating types with other floating types is not allowed."

# The following tests are intended to verify that gdb can handle "d1=d2"
# and "d1=-d2" correctly.

gdb_test "print ds.dec32=d32" " = 0.1"
gdb_test "print ds.dec64=d64" " = 0.1"
gdb_test "print ds.dec128=d128" " = 0.1"
gdb_test "print ds.dec32 = -d32" " = -0.1"
gdb_test "print ds.dec64 = -d64" " = -0.1"
gdb_test "print ds.dec128 = -d128" " = -0.1"

# Test cast to and from DFP values

gdb_test "print ds.double8 = ds.dec64" " = -0.(0999.*|1000.*)"
gdb_test "print ds.dec64 = ds.float4" " = 3.(0999.*|1000.*)"
gdb_test "print ds.dec128 = -ds.double8" " = 0.(0999.*|1000.*)"
gdb_test "print ds.dec128 = ds.dec32" " = -0.1"
gdb_test "print ds.dec32 = ds.int4" " = 1"
gdb_test "print ds.int4 = 7.3dl" " = 7"
