aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2004-02-09[multiple changes]Arnaud Charlet29-1040/+1456
2004-02-09 Ed Schonberg <schonberg@gnat.com> * exp_ch4.adb (Expand_N_Op_Eq): When looking for the primitive equality for a tagged type, verify that both formals have the same type. * exp_ch6.adb (Add_Call_By_Copy_Code): Initialize properly the temporary when the formal is an in-parameter and the actual a possibly unaligned slice. * exp_ch9.adb (Expand_Entry_Barrier): Resolve barrier expression even when expansion is disabled, to ensure proper name capture with overloaded literals. Condition can be of any boolean type, resolve accordingly. * sem_ch8.adb (Analyze_Subprogram_Renaming): Emit warning if the renaming is for a formal subprogram with a default operator name, and there is a usable operator that is visible at the point of instantiation. 2004-02-09 Robert Dewar <dewar@gnat.com> * ali.adb (Scan_Ali) Add Ignore_Errors argument. This is a major rewrite to ignore errors in ali files, intended to allow tools downward compatibility with new versions of ali files. * ali.ads: Add new parameter Ignore_Errors * bcheck.adb (Check_Consistent_Restrictions): Fix error of sometimes duplicating the error message giving the file with restrictions. * debug.adb: Add debug flag I for gnatbind * errout.adb (Set_Msg_Insertion_Node): Suppress extra quotes around operators for the case where the operator is a defining operator. * exp_ch3.adb: Minor reformatting (new function spec format). * exp_ch4.adb: Add comment for previous change, and make minor adjustment to loop to always check for improper loop termination. Minor reformatting throughout (new function spec format). * gnatbind.adb: Implement -di debug flag for gnatbind * gnatlink.adb: Call Scan_ALI with Ignore_Errors set to True * gnatls.adb: Call Scan_ALI with Ignore_Errors set to True * lib-load.adb: Fix bad assertion. Found by testing and code reading. Minor reformatting. * lib-load.ads: Minor reformatting. * lib-writ.adb: There is only one R line now. * lib-writ.ads: Add documentation on making downward compatible changes to ali files so old tools work with new ali files. There is only one R line now. Add documentation on format incompatibilities (with special GPS note) * namet.ads, namet.adb: (Is_Operator_Name): New procedure * par-load.adb: Minor reformatting * sem_ch8.adb: Fix to error message from last update Minor reformatting and restructuring of code from last update * par-prag.adb, snames.adb, snames.ads, snames.h, sem_prag.adb: Implement pragma Profile. * stylesw.adb: Implement -gnatyN switch to turn off all style check options. * usage.adb: Add line for -gnatyN switch * vms_data.ads: Add entry STYLE_CHECKS=NONE for -gnatyN From-SVN: r77537
2004-02-09* call.c, parser.c, tree.c: Fix comment typos.Kazu Hirata4-5/+9
From-SVN: r77536
2004-02-09fold-const.c (fold): Use the original type conversion tree code rather than ↵Roger Sayle4-12/+33
call fold_convert... * fold-const.c (fold) <NOP_EXPR>: Use the original type conversion tree code rather than call fold_convert, which doesn't specify a default floating point to integer conversion. * gcc.c-torture/compile/20040209-1.c: New test case. From-SVN: r77535
2004-02-09* src/types.c (pointer): POWERPC64 has 8 byte pointers.Alan Modra2-1/+3
From-SVN: r77533
2004-02-09[multiple changes]Arnaud Charlet8-38/+128
2004-02-09 Albert Lee <lee@gnat.com> * errno.c: define _SGI_MP_SOURCE for task-safe errno on IRIX 2004-02-09 Ed Schonberg <schonberg@gnat.com> * exp_ch3.adb (Build_Slice_Assignment): Handle properly case of null slices. * exp_ch6.adb (Expand_Call): Do not inline a call when the subprogram is nested in an instance that is not frozen yet, to avoid order-of-elaboration problems in gigi. * sem_attr.adb (Analyze_Attribute, case 'Access): Within an inlined body the attribute is legal. 2004-02-09 Robert Dewar <dewar@gnat.com> * s-rident.ads: Minor comment correction * targparm.adb: Remove dependence on uintp completely. There was always a bug in Make in that it called Targparm before initializing the Uint package. The old code appeared to get away with this, but the new code did not! This caused an assertion error in gnatmake. * targparm.ads: Fix bad comment, restriction pragmas with parameters are indeed fully supported. From-SVN: r77531
2004-02-09MAINTAINERS: Add myself to write-after-approval.Paolo Bonzini2-0/+5
2004-02-09 Paolo Bonzini <bonzini@gnu.org> * MAINTAINERS: Add myself to write-after-approval. From-SVN: r77530
2004-02-09re PR libstdc++/14072 (basic_ios::imbue leaves dangling pointers)Paolo Carlini4-1/+238
2004-02-09 Paolo Carlini <pcarlini@suse.de> PR libstdc++/14072 * include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale): Don't leave dangling pointers. * testsuite/27_io/basic_ios/imbue/14072.cc: New. * testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put facet is needed in the final test. From-SVN: r77526
2004-02-08parse.y (resolve_qualified_expression_name): In case of inaccessible class ↵Per Bothner2-1/+13
don't use not_accessible_field_error... * parse.y (resolve_qualified_expression_name): In case of inaccessible class don't use not_accessible_field_error, which can get confused. From-SVN: r77525
2004-02-09crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*.Bernardo Innocenti3-2/+19
* crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*. * configure: Regenerate. From-SVN: r77523
2004-02-09ffi.c (ffi_prep_args64): Correct long double handling.Alan Modra5-19/+48
* src/powerpc/ffi.c (ffi_prep_args64): Correct long double handling. (ffi_closure_helper_LINUX64): Fix typo. * testsuite/libffi.call/cls_align_longdouble.c: Pass -mlong-double-128 for powerpc64-*-*. * testsuite/libffi.call/float.c: Likewise. * testsuite/libffi.call/float2.c: Likewise. From-SVN: r77522
2004-02-09m68k.c, m68k.md (SGS, [...]): Remove code to support SGS assembler.Bernardo Innocenti7-460/+189
* config/m68k/m68k.c, config/m68k/m68k.md (SGS, SGS_CMP_ORDER): Remove code to support SGS assembler. Reformat adjacent code where possible. * config/m68k/m68k.c (switch_table_difference_label_flag): Remove definition. * config/m68k/m68k.h (PRINT_OPERAND_PUNCT_VALID_P): Remove support for '%#'. * config/m68k/linux.h, config/m68k/m68k.c, * config/m68k/math-68881.h: Replace `%#' with `#' in inline asm macros and asm_printf() format strings. * config/m68k/m68kelf.h (ASM_OUTPUT_CASE_END): Remove macro definition. * config/m68k/linux.h: Update copyright. * config/m68k/linux.h, config/m68k/m68k.c: Remove traling whitespace. From-SVN: r77518
2004-02-09Daily bump.GCC Administrator2-2/+2
From-SVN: r77515
2004-02-09m68k.h (REGISTER_NAMES): Prefix each name with REGISTER_PREFIX.Bernardo Innocenti1-3/+20
* config/m68k/m68k.h (REGISTER_NAMES): Prefix each name with REGISTER_PREFIX. * (M68K_FP_REG_NAME): New macro to specify an alternate name for the frame pointer register, overridable by OS targets. * (M68K_REGNAME): Macro to obtain register name for asm output, eventually replacing %a6 with M68K_FP_REG_NAME. * config/m68k/coff.h (REGISTER_NAMES): Don't redefine. * config/m68k/linux.h (REGISTER_NAMES): Likewise. * config/m68k/m68kelf.h (REGISTER_NAMES): Likewise. * config/m68k/netbsd-elf.h (REGISTER_NAMES): Likewise. * config/m68k/m68k.c: Use M68K_REGNAME(x) in place of reg_names[x]. From-SVN: r77511
2004-02-09m68k.h (REGISTER_NAMES): Prefix each name with REGISTER_PREFIX.Andreas Schwab7-106/+75
* config/m68k/m68k.h (REGISTER_NAMES): Prefix each name with REGISTER_PREFIX. * (M68K_FP_REG_NAME): New macro to specify an alternate name for the frame pointer register, overridable by OS targets. * (M68K_REGNAME): Macro to obtain register name for asm output, eventually replacing %a6 with M68K_FP_REG_NAME. * config/m68k/coff.h (REGISTER_NAMES): Don't redefine. * config/m68k/linux.h (REGISTER_NAMES): Likewise. * config/m68k/m68kelf.h (REGISTER_NAMES): Likewise. * config/m68k/netbsd-elf.h (REGISTER_NAMES): Likewise. * config/m68k/m68k.c: Use M68K_REGNAME(x) in place of reg_names[x]. Co-Authored-By: Bernardo Innocenti <bernie@develer.com> From-SVN: r77510
2004-02-08Fixed a typo in ChangeLog.Kazu Hirata1-1/+2
From-SVN: r77507
2004-02-08target-def.h (TARGET_STRUCT_VALUE_RTX): Define as hook_rtx_tree_int_null.Kazu Hirata23-51/+21
* target-def.h (TARGET_STRUCT_VALUE_RTX): Define as hook_rtx_tree_int_null. * targhooks.c (default_struct_value_rtx): Remove. * targhooks.h: Remove the prototype for default_struct_value_rtx. * config/alpha/alpha.c, config/arc/arc.c, config/avr/avr.c, config/fr30/fr30.c, config/h8300/h8300.c, config/i386/i386.c, config/ip2k/ip2k.c, config/iq2000/iq2000.c, config/m32r/m32r.c, config/mcore/mcore.c, config/mips/mips.c, config/mn10300/mn10300.c, config/pdp11/pdp11.c, config/rs6000/rs6000.c, config/s390/s390.c, config/stormy16/stormy16.c, config/v850/v850.c, config/xtensa/xtensa.c (TARGET_STRUCT_VALUE_RTX): Remove. * doc/tm.texi (TARGET_STRUCT_VALUE_RTX): Document the default. From-SVN: r77505
2004-02-08ByteBuffer.java (shiftDown): New helper method.Per Bothner13-548/+489
* java/nio/ByteBuffer.java (shiftDown): New helper method. * java/nio/natDirectByteBufferImpl.cc (shiftDown): New implementation. * java/nio/ByteBufferImpl.java (compact): Use new shiftDown method. * sava/nio/ByteBufferHelper.java: Remove redundant 'final' specifiers. Pass ByteOrder parameter to most methods, since the underlying ByteBuffer's order isn't always what we should use. * java/nio/ByteBufferImpl.java: Pass byte-order various places. * java/nio/DirectByteBufferImpl.java: Likewise. Use ByteBufferHelper methods. * java/nio/MappedByteBufferImpl.java: Likewise. (compact): Use shiftDown. * java/nio/CharViewBufferImpl.java (<init>): Pass byte-order. (get, put): Use ByteBufferHelper. (compact): Use new shiftDown method. (duplicate(boolean)): New helper method. (duplicate, asReadOnlyBuffer): Use it. (order): Return endian field. * java/nio/DoubleViewBufferImpl.java: Likewise. * java/nio/FloatViewBufferImpl.java: Likewise. * java/nio/IntViewBufferImpl.java: Likewise. * java/nio/LongViewBufferImpl.java: Likewise. * java/nio/ShortViewBufferImpl.java: Likewise. * java/nio/CharViewBufferImpl.java (subsequence): Redundant test. * java/nio/DirectByteBufferImpl.java (shiftDown): New native method. (compact): Re-implement using shiftDown. From-SVN: r77501
2004-02-08README.Portability: Change "ISO C89" to "ISO C90".Joseph Myers5-7/+16
* README.Portability: Change "ISO C89" to "ISO C90". * c-parse.in (primary, initelt): Likewise. testsuite: * gcc.dg/c90-init-1.c: Adjust expected error messages. From-SVN: r77499
2004-02-08real.c (encode_ibm_extended): Normalize the input value before converting it ↵Richard Sandiford5-4/+40
to a double. * real.c (encode_ibm_extended): Normalize the input value before converting it to a double. Handle the case where a normal value rounds to infinity. From-SVN: r77498
2004-02-08c-objc-common.c (): Fix a typo in a warning.Kazu Hirata4-31/+41
* c-objc-common.c (): Fix a typo in a warning. * cse.c (preferrable): Change to preferable. Update all of its callers. * genautomata.c (ainsn): Change first_ainsn_with_given_equialence_num to first_ainsn_with_given_equivalence_num. Update all of its references. From-SVN: r77497
2004-02-08* g++.dg/eh/simd-2.C: Adjust line numbers for SPARC.Eric Botcazou2-1/+7
From-SVN: r77495
2004-02-08re PR libstdc++/14026 (std::uncaught_exception is true although there are no ↵Richard Henderson3-3/+46
uncaught exceptions (rethrow, ghost exception)) PR libstdc++/14026 * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust uncaughtExceptions during nested catch rethrow. * testsuite/18_support/14026.cc: New. From-SVN: r77492
2004-02-08* include/x86_64-signal.h: Fix typo.Andreas Jaeger2-1/+5
From-SVN: r77491
2004-02-08i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Add volatile qualifier to _regs.Diego Novillo1-1/+1
* include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Add volatile qualifier to _regs. From-SVN: r77489
2004-02-08i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Add volatile qualifier to _regs.Diego Novillo1-0/+1
* include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Add volatile qualifier to _regs. [[Split portion of a mixed commit.]] From-SVN: r77488.2
2004-02-08basic_string.tcc (assign(const _CharT*, size_type)): When working in place ↵Paolo Carlini2-0/+7
remember to set the state to sharable (otherwise... 2004-02-08 Paolo Carlini <pcarlini@suse.de> * include/bits/basic_string.tcc (assign(const _CharT*, size_type)): When working in place remember to set the state to sharable (otherwise, _M_mutate does it). From-SVN: r77487
2004-02-08* gcc.c-torture/execute/va-arg-25.x: XFAIL only on SPARC 64-bit.Eric Botcazou2-8/+24
From-SVN: r77485
2004-02-08i386-signal.h (MAKE_THROW_FRAME): Add volatile qualifier to _regs.Diego Novillo2-1/+6
* include/i386-signal.h (MAKE_THROW_FRAME): Add volatile qualifier to _regs. From-SVN: r77484
2004-02-08ffi.c (ffi_prep_cif_machdep <FFI_LINUX64>): Correct long double function ↵Alan Modra4-82/+110
return and long double arg handling. * src/powerpc/ffi.c (ffi_prep_cif_machdep <FFI_LINUX64>): Correct long double function return and long double arg handling. (ffi_closure_helper_LINUX64): Formatting. Delete unused "ng" var. Use "end_pfr" instead of "nf". Correct long double handling. Localise "temp". * src/powerpc/linux64.S (ffi_call_LINUX64): Save f2 long double return value. * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Allocate space for long double return value. Adjust stack frame and offsets. Load f2 long double return. From-SVN: r77481
2004-02-08* schedule-ebb.c (schedule_ebbs): Do not allocate reg life data.Jan Hubicka2-1/+4
From-SVN: r77480
2004-02-08Remove trailing whitespace (see ChangeLog for longwinded description).Bernardo Innocenti65-3434/+3470
From-SVN: r77479
2004-02-07* function.c (assign_parms): Fix formatting.David Edelsohn2-1/+6
From-SVN: r77478
2004-02-08default.h (PROMOTE_PROTOTYPES): Remove.Kazu Hirata7-50/+30
* default.h (PROMOTE_PROTOTYPES): Remove. * system.h (PROMOTE_FUNCTION_RETURN, PROMOTE_PROTOTYPES, STRUCT_VALUE_REGNUM, SETUP_INCOMING_VARARGS, EXPAND_BUILTIN_SAVEREGS): Poison. * target-def.h (TARGET_PROMOTE_FUNCTION_RETURN): Define as hook_bool_tree_false. (TARGET_PROMOTE_PROTOTYPES): Likewise. * target.h: Replace SETUP_INCOMING_VARARGS with targetm.calls.setup_incoming_varargs(). * targhooks.c (default_promote_function_return): Remove. (default_promote_prototypes): Likewise. (default_struct_value_rtx): Always abort(). (default_expand_builtin_saveregs): Always print an error message. (default_setup_incoming_varargs): Do nothing. (default_pretend_outgoing_varargs_named): Don't depend on SETUP_INCOMING_VARARGS. * targhooks.h: Remove the prototype for default_promote_function_return and default_promote_prototypes. From-SVN: r77477
2004-02-08system.h (SHARED_SECTION_ASM_OP): Poison.Kazu Hirata4-17/+8
* system.h (SHARED_SECTION_ASM_OP): Poison. * varasm.c (data_section): Don't use SHARED_SECTION_ASM_OP. * doc/tm.texi (SHARED_SECTION_ASM_OP): Remove. From-SVN: r77476
2004-02-08c-common.c (shadow_warning): Delete.Zack Weinberg19-167/+157
* c-common.c (shadow_warning): Delete. * c-common.h (free_parser_stacks, shadow_warning, sw_kind): Delete. * c-decl.c (warn_if_shadowing): Issue shadow warnings directly. * c-opts.c (c_common_parse_file): Don't call free_parser_stacks. * c-parse.in (free_parser_stacks): Delete. cp: * name-lookup.c (pushdecl): Issue shadow warnings directly. * parser.c (free_parser_stacks): Delete. testsuite: * gcc.c-torture/execute/string-opt-15.c: Define memcmp with void * arguments. * gcc.dg/fwritable-strings-1.c: Expect the deprecation notice. ------ Bug 13856 * c-decl.c (diagnose_mismatched_decls): Only give special treatment when olddecl is DECL_BUILT_IN, if C_DECL_INVISIBLE is also true. (merge_decls): Don't clear DECL_BUILT_IN_CLASS and DECL_FUNCTION_CODE when defining a built-in function. Don't update DECL_ESTIMATED_INSNS. * dwarf2out.c (dwarf2out_decl): Don't ignore built-in FUNCTION_DECLs. * tree.h: Delete DECL_ESTIMATED_INSNS. * tree-inline.c (struct inline_data): Delete inlined_insns field. (expand_call_inline, optimize_inline_calls): Don't update DECL_ESTIMATED_INSNS nor inlined_insns. * cgraphunit.c (cgraph_analyze_function): Don't update DECL_ESTIMATED_INSNS. cp: * optimize.c (maybe_clone_body): Don't update DECL_ESTIMATED_INSNS. * decl.c (duplicate_decls, start_function): Likewise. testsuite: * gcc.dg/visibility-8.c: New testcase. From-SVN: r77475
2004-02-08Daily bump.GCC Administrator2-2/+2
From-SVN: r77469
2004-02-07Makefile.in, [...]: Use the top level mkinstalldirs, not the one in the gcc ↵Nathanael Nerode8-133/+32
subdir. * Makefile.in, config/t-slibgcc-darwin, config/t-slibgcc-elf-ver, config/t-slibgcc-sld, config/mips/t-iris5-6, config/sh/t-linux: Use the top level mkinstalldirs, not the one in the gcc subdir. * mkinstalldirs: Remove (from the gcc subdir). From-SVN: r77466
2004-02-07re PR middle-end/13696 (enum not useable as array index?)Roger Sayle4-277/+450
PR middle-end/13696 * fold-const.c (fold_convert): New function to provide type conversion to the middle-end without using convert. (negate_expr, associate_trees, size_diffop, omit_one_operand, operand_equal_for_comparison_p, pedantic_omit_one_operand, invert_truthvalue, optimize_bit_field_compare, range_binop, decode_field_reference, make_range, build_range_check, unextend, fold_truthop, extract_muldiv_1, fold_mathfn_compare, fold_binary_op_with_conditional_arg, fold_inf_compare, fold_single_bit_test, fold, multiple_of_p): Replace all calls to convert with calls to fold_convert. * g++.dg/opt/fold1.C: New test case. From-SVN: r77464
2004-02-07genrecog.c (find_operand): add extra argument stop.Jan Hubicka2-8/+28
* genrecog.c (find_operand): add extra argument stop. (validate_pattern): Verify that mach_dup is duplicating operand defined lexically earlier. From-SVN: r77461
2004-02-07config.gcc: Don't mention MAX_LONG_TYPE_SIZE.Kazu Hirata26-100/+24
* config.gcc: Don't mention MAX_LONG_TYPE_SIZE. * system.h (MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE, GCOV_TYPE_SIZE): Poison. * config/avr/avr.h, config/h8300/h8300.h, config/i386/i386.h, config/ia64/ia64.h, config/ip2k/ip2k.h, config/iq2000/iq2000.h, config/mips/iris5.h, config/mips/mips.h, config/pa/pa-64.h, config/pa/pa.h, config/rs6000/aix51.h, config/rs6000/aix52.h, config/rs6000/darwin.h, config/rs6000/rs6000.h, config/s390/s390.h, config/sh/sh.h, config/sparc/freebsd.h, config/sparc/linux.h, config/sparc/linux64.h, config/sparc/netbsd-elf.h, config/sparc/sparc.h, config/xtensa/xtensa.h: Remove the definitions of MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE, and/or MAX_WCHAR_TYPE_SIZE. * doc/tm.texi (MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE, GCOV_TYPE_SIZE): Remove. From-SVN: r77460
2004-02-07re PR bootstrap/13990 (build fails because of wrong use of gen_rtx_NE)Stephane Carrez2-2/+15
PR bootstrap/13990 * config/m68hc11/m68hc11.md ("doloop_end"): Pass dummy arguments to gen_rtx_NE. From-SVN: r77459
2004-02-07var-tracking.c (vt_add_function_parameters): Surround checkings by #ifdef ↵Josef Zlomek2-0/+9
ENABLE_CHECKING and #endif. * var-tracking.c (vt_add_function_parameters): Surround checkings by #ifdef ENABLE_CHECKING and #endif. From-SVN: r77458
2004-02-07fold-const.c (negate_expr_p, [...]): Optimize -(A+B) into either (-A)-B or ↵Roger Sayle2-13/+68
(-B)-A... * fold-const.c (negate_expr_p, negate_expr): Optimize -(A+B) into either (-A)-B or (-B)-A, if A or B is easily negated respectively. (fold) <MINUS_EXPR>: Optimize (A*C) - (B*C) -> (A-B)*C for both integer types and floating point with unsafe_math_optimizations. Add similar optimization for (A*C1) - (A*C2) -> A*(C1-C2). Optimize A - B as A + (-B), if B is easily negated. From-SVN: r77453
2004-02-07c-ppoutput.c, [...]: Update copyright.Kazu Hirata15-13/+25
gcc/ * c-ppoutput.c, cfganal.c, diagnostic.h, print-rtl.c, config/darwin.c, config/darwin.h, config/ia64/ia64-c.c, config/m32r/linux.h, config/rs6000/ppc64-fp.c, config/sparc/openbsd.h, doc/makefile.texi, doc/passes.texi: Update copyright. cp/ * rtti.c: Update copyright. From-SVN: r77449
2004-02-07* c-ppoutput.c, var-tracking.c: Fix comment typos.Kazu Hirata3-4/+8
From-SVN: r77448
2004-02-06Fix compile error with old glibc verisons.James E Wilson2-0/+11
* config/ia64/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Only define for glibc 2.3 or better. From-SVN: r77443
2004-02-07tm.texi (TARGET_FLOAT_LIB_COMPARE_RETURNS_BOOL): Change to ↵Kazu Hirata2-1/+6
FLOAT_LIB_COMPARE_RETURNS_BOOL. * doc/tm.texi (TARGET_FLOAT_LIB_COMPARE_RETURNS_BOOL): Change to FLOAT_LIB_COMPARE_RETURNS_BOOL. From-SVN: r77442
2004-02-07* src/types.c: Use 16 byte long double for POWERPC64.Alan Modra2-1/+5
From-SVN: r77441
2004-02-07t-linux64 (LIB2FUNCS_EXTRA): Add darwin-ldouble.c.Alan Modra6-14/+100
* config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Add darwin-ldouble.c. (SHLIB_MAPFILES): Add libgcc-ppc64.ver. (SHLIB_MKMAP_OPTS): Delete. (TARGET_LIBGCC2_CFLAGS): Add -specs. (bispecs): Add rule. * config/rs6000/libgcc-ppc64.ver: New file. * config/rs6000/ppc64-fp.c (__fixtfdi, __floatditf): New functions. (__floatdidf, __floatdisf): Optimize multiply. (__fixunstfdi): New function. * config/rs6000/rs6000.c (rs6000_complex_function_value): Allow for real and imag parts larger than one register. (function_arg): Correct type of reg used when fp arg split partially to stack. * config/rs6000/darwin-ldouble.c: Protect with #if !_SOFT_FLOAT and __MACH__ or __powerpc64__. From-SVN: r77440
2004-02-07builtins.c (expand_builtin_signbit): Use extract_bit_field instead of ↵Roger Sayle2-22/+30
gen_highpart or gen_lowpart when... * builtins.c (expand_builtin_signbit): Use extract_bit_field instead of gen_highpart or gen_lowpart when the floating point format is wider than the result mode. Co-Authored-By: Ulrich Weigand <uweigand@de.ibm.com> From-SVN: r77439