From ee890fe2a15b3ed799f92a951ea64825793deec8 Mon Sep 17 00:00:00 2001 From: Stan Shebs Date: Thu, 12 Apr 2001 02:13:00 +0000 Subject: Add Darwin (Mac OS X kernel) native support. * config.gcc (powerpc-*-darwin*): Add native bits. * config/darwin.c: New file, generic Darwin support functions. * config/darwin.h: New file, generic Darwin definitions. * config/darwin-protos.h: New file, generic Darwin prototypes. * rs6000/darwin.h: New file, Darwin for PowerPC. * rs6000/t-darwin: New file, Darwin makefile fragment. * rs6000/rs6000.h (OBJECT_MACHO): New macro. (TARGET_MACHO): Ditto. (rs6000_abi): Add ABI_DARWIN. (RS6000_REG_SAVE): Add ABI_DARWIN case. (RS6000_SAVE_AREA): Ditto. (FP_ARG_MAX_REG): Ditto. (RETURN_ADDRESS_OFFSET): Ditto. * rs6000/rs6000.c (rs6000_legitimize_address): Add TARGET_MACHO cases. (rs6000_emit_move): Add ABI_DARWIN cases. (print_operand): Ditto. (first_reg_to_save): Ditto. (rs6000_stack_info): Ditto, also align stack by 16 instead of 8. (debug_stack_info): Ditto. (rs6000_emit_prologue): Ditto. (rs6000_emit_epilogue): Ditto. (output_profiler_hook): Ditto. (output_function_profiler): Ditto. (rs6000_add_gc_roots): Call machopic_add_gc_roots if TARGET_MACHO. (output_mi_thunk): Add TARGET_MACHO case. (add_compiler_stub): Ditto. (output_compiler_stub): Ditto. (no_previous_def): Ditto. (output_call): Ditto. (machopic_output_stub): Ditto. (rs6000_machopic_legitimize_pic_address): Ditto. (toc_section): Ditto. * rs6000/rs6000.md (addsi3_high): New TARGET_MACHO pattern. (macho_high): Ditto. (macho_low): Ditto. (movsi_low): Ditto. (load_macho_picbase): Ditto. (call): Add TARGET_MACHO case to modify function. (call_value): Ditto. (call_nonlocal_sysv): Add ABI_DARWIN case. (call_value_nonlocal_sysv): Ditto. * rs6000/rs6000-protos.h (rs6000_machopic_legitimize_pic_address): Add prototype. (machopic_output_stub): Ditto. * ginclude/stddef.h: Test _BSD_WCHAR_T_DEFINED_. From-SVN: r41277 --- gcc/config.gcc | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'gcc/config.gcc') diff --git a/gcc/config.gcc b/gcc/config.gcc index 6fb9e99..07578f9 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -2647,8 +2647,15 @@ powerpc-*-beos*) tmake_file=rs6000/t-beos ;; powerpc-*-darwin*) + cpu_type=rs6000 + tm_file="${tm_file} darwin.h rs6000/darwin.h" + tm_p_file="${tm_p_file} darwin-protos.h" + tmake_file=rs6000/t-darwin xm_file=rs6000/xm-darwin.h xmake_file=rs6000/x-darwin + extra_objs="darwin.o" + # Darwin linker does collect2 functionality + use_collect2=no ;; powerpc-*-sysv*) tm_file="${tm_file} svr4.h rs6000/sysv4.h" -- cgit v1.1