summaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authorshebs <shebs@138bc75d-0d04-0410-961f-82ee72b054a4>2001-04-12 02:13:00 +0000
committershebs <shebs@138bc75d-0d04-0410-961f-82ee72b054a4>2001-04-12 02:13:00 +0000
commit80d725d710017efdde55743bdfb2163ce3a1ecf2 (patch)
tree050edc4f92fee78d3a1e0cff1ebad238fc8801f2 /gcc/config.gcc
parent051b8c9614b90e35ca3246f5be13c6445ef34763 (diff)
downloadgcc-80d725d710017efdde55743bdfb2163ce3a1ecf2.tar.gz
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_. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41277 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r--gcc/config.gcc7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 6fb9e99a528..07578f97eb3 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"