From: hubicka Date: Sat, 22 Nov 2003 16:11:27 +0000 (+0000) Subject: * i386.c (classify_argument): Pass __float128 in memory. X-Git-Url: http://git.sourceforge.jp/view?a=commitdiff_plain;h=57025906c0a11c89f13e756024cbe590217927ca;p=pf3gnuchains%2Fgcc-fork.git * i386.c (classify_argument): Pass __float128 in memory. (ix86_return_in_memory): Likewise. (ix86_libcall_value): Likewsie. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73842 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 968e627cb8f..38614844760 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2003-11-22 Jan Hubicka + + * i386.c (classify_argument): Pass __float128 in memory. + (ix86_return_in_memory): Likewise. + (ix86_libcall_value): Likewsie. + 2003-11-22 Kazu Hirata * config/h8300/h8300.c (dosize): Convert to ISO-C. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 80603716cb5..240e46a3200 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -2182,7 +2182,6 @@ classify_argument (enum machine_mode mode, tree type, return 1; case CDImode: case TImode: - case TCmode: classes[0] = classes[1] = X86_64_INTEGER_CLASS; return 2; case CTImode: @@ -2203,9 +2202,8 @@ classify_argument (enum machine_mode mode, tree type, classes[1] = X86_64_X87UP_CLASS; return 2; case TFmode: - classes[0] = X86_64_INTEGER_CLASS; - classes[1] = X86_64_INTEGER_CLASS; - return 2; + case TCmode: + return 0; case XCmode: classes[0] = X86_64_X87_CLASS; classes[1] = X86_64_X87UP_CLASS; @@ -2784,7 +2782,7 @@ ix86_return_in_memory (tree type) } } - if (mode == TFmode || mode == XFmode) + if (mode == XFmode) return 0; if (size > 12) @@ -2810,18 +2808,6 @@ ix86_libcall_value (enum machine_mode mode) case XCmode: return gen_rtx_REG (mode, FIRST_FLOAT_REG); case TFmode: - { - rtx ret = gen_rtx_PARALLEL (mode, rtvec_alloc (2)); - XVECEXP (ret, 0, 0) = gen_rtx_EXPR_LIST - (VOIDmode, - gen_rtx_REG (DImode, x86_64_int_parameter_registers [0]), - const0_rtx); - XVECEXP (ret, 0, 1) = gen_rtx_EXPR_LIST - (VOIDmode, - gen_rtx_REG (DImode, x86_64_int_parameter_registers [1]), - GEN_INT (64)); - return ret; - } case TCmode: return NULL; default: