aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStuart Hastings <stuart@apple.com>2006-04-19 04:18:09 +0000
committerStuart Hastings <stuart@apple.com>2006-04-19 04:18:09 +0000
commit99fa9b7cdc11a4464bb8913a11a84081a5866bfd (patch)
treeda8028dc179c3f4f582a0ca605a1537b4c8b577e
parente708463c9257e2a5f1237923d984d7013aea0332 (diff)
Radar 4505290apple/gcc-5336
* config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): New. * config/t-darwin (crt3.o): Use it. * config/rs6000/rs6000.md (call_indirect_nonlocal_sysv, call_nonlocal_sysv, call_value_indirect_nonlocal_sysv, call_value_nonlocal_sysv, sibcall_nonlocal_sysv, sibcall_value_nonlocal_sysv): Use the P macro for 32/64 support. git-svn-id: https://gcc.gnu.org/svn/gcc/branches/apple-local-200502-branch@113067 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog.apple-ppc10
-rw-r--r--gcc/config/rs6000/rs6000.md36
-rw-r--r--gcc/config/rs6000/t-darwin3
-rw-r--r--gcc/config/t-darwin3
4 files changed, 40 insertions, 12 deletions
diff --git a/gcc/ChangeLog.apple-ppc b/gcc/ChangeLog.apple-ppc
index a60d479b24d..f185444d632 100644
--- a/gcc/ChangeLog.apple-ppc
+++ b/gcc/ChangeLog.apple-ppc
@@ -1,3 +1,13 @@
+2006-04-18 Stuart Hastings <stuart@apple.com>
+
+ Radar 4505290
+ * config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): New.
+ * config/t-darwin (crt3.o): Use it.
+ * config/rs6000/rs6000.md (call_indirect_nonlocal_sysv,
+ call_nonlocal_sysv, call_value_indirect_nonlocal_sysv,
+ call_value_nonlocal_sysv, sibcall_nonlocal_sysv,
+ sibcall_value_nonlocal_sysv): Use the P macro for 32/64 support.
+
2006-04-18 Devang Patel <dpatel@apple.com>
Radar 4475058
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index 4cf4e4f7b99..3faa6064f48 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -10608,8 +10608,10 @@
;; which indicates how to set cr1
;; APPLE LOCAL begin separate cl into c,*l; switch and attr's expanded to match
-(define_insn "*call_indirect_nonlocal_sysv"
- [(call (mem:SI (match_operand:SI 0 "register_operand" "c,*l,c,*l"))
+;; APPLE LOCAL begin 4505290
+(define_insn "*call_indirect_nonlocal_sysv<mode>"
+ [(call (mem:SI (match_operand:P 0 "register_operand" "c,*l,c,*l"))
+;; APPLE LOCAL end 4505290
(match_operand 1 "" "g,g,g,g"))
(use (match_operand:SI 2 "immediate_operand" "O,O,n,n"))
(clobber (match_scratch:SI 3 "=l,l,l,l"))]
@@ -10628,8 +10630,10 @@
(set_attr "length" "4,4,8,8")])
;; APPLE LOCAL end separate cl into c,*l; switch and attr's expanded to match
-(define_insn "*call_nonlocal_sysv"
- [(call (mem:SI (match_operand:SI 0 "symbol_ref_operand" "s,s"))
+;; APPLE LOCAL begin 4505290
+(define_insn "*call_nonlocal_sysv<mode>"
+ [(call (mem:SI (match_operand:P 0 "symbol_ref_operand" "s,s"))
+;; APPLE LOCAL end 4505290
(match_operand 1 "" "g,g"))
(use (match_operand:SI 2 "immediate_operand" "O,n"))
(clobber (match_scratch:SI 3 "=l,l"))]
@@ -10668,9 +10672,11 @@
(set_attr "length" "4,8")])
;; APPLE LOCAL begin separate cl into c,*l; switch and attr's expanded to match
-(define_insn "*call_value_indirect_nonlocal_sysv"
+;; APPLE LOCAL begin 4505290
+(define_insn "*call_value_indirect_nonlocal_sysv<mode>"
[(set (match_operand 0 "" "")
- (call (mem:SI (match_operand:SI 1 "register_operand" "c,*l,c,*l"))
+ (call (mem:SI (match_operand:P 1 "register_operand" "c,*l,c,*l"))
+;; APPLE LOCAL end 4505290
(match_operand 2 "" "g,g,g,g")))
(use (match_operand:SI 3 "immediate_operand" "O,O,n,n"))
(clobber (match_scratch:SI 4 "=l,l,l,l"))]
@@ -10689,9 +10695,11 @@
(set_attr "length" "4,4,8,8")])
;; APPLE LOCAL end separate cl into c,*l; switch and attr's expanded to match
-(define_insn "*call_value_nonlocal_sysv"
+;; APPLE LOCAL begin 4505290
+(define_insn "*call_value_nonlocal_sysv<mode>"
[(set (match_operand 0 "" "")
- (call (mem:SI (match_operand:SI 1 "symbol_ref_operand" "s,s"))
+ (call (mem:SI (match_operand:P 1 "symbol_ref_operand" "s,s"))
+;; APPLE LOCAL end 4505290
(match_operand 2 "" "g,g")))
(use (match_operand:SI 3 "immediate_operand" "O,n"))
(clobber (match_scratch:SI 4 "=l,l"))]
@@ -11012,8 +11020,10 @@
[(set_attr "type" "branch")
(set_attr "length" "4")])
-(define_insn "*sibcall_nonlocal_sysv"
- [(call (mem:SI (match_operand:SI 0 "symbol_ref_operand" "s,s"))
+;; APPLE LOCAL begin 4505290
+(define_insn "*sibcall_nonlocal_sysv<mode>"
+ [(call (mem:SI (match_operand:P 0 "symbol_ref_operand" "s,s"))
+;; APPLE LOCAL end 4505290
(match_operand 1 "" ""))
(use (match_operand 2 "immediate_operand" "O,n"))
(use (match_operand:SI 3 "register_operand" "l,l"))
@@ -11057,9 +11067,11 @@
}")
-(define_insn "*sibcall_value_nonlocal_sysv"
+;; APPLE LOCAL begin 4505290
+(define_insn "*sibcall_value_nonlocal_sysv<mode>"
[(set (match_operand 0 "" "")
- (call (mem:SI (match_operand:SI 1 "symbol_ref_operand" "s,s"))
+ (call (mem:SI (match_operand:P 1 "symbol_ref_operand" "s,s"))
+;; APPLE LOCAL end 4505290
(match_operand 2 "" "")))
(use (match_operand:SI 3 "immediate_operand" "O,n"))
(use (match_operand:SI 4 "register_operand" "l,l"))
diff --git a/gcc/config/rs6000/t-darwin b/gcc/config/rs6000/t-darwin
index 973bb321d05..eac3049e283 100644
--- a/gcc/config/rs6000/t-darwin
+++ b/gcc/config/rs6000/t-darwin
@@ -31,6 +31,9 @@ darwin-fpsave.o: $(srcdir)/config/rs6000/darwin-asm.h
darwin-tramp.o: $(srcdir)/config/rs6000/darwin-asm.h
# APPLE LOCAL begin mainline 2006-03-15 3992198
+# APPLE LOCAL 4505290
+DARWIN_EXTRA_CRT_BUILD_CFLAGS = -mlongcall
+
# Explain how to build crt2.o
$(T)crt2$(objext): $(srcdir)/config/darwin-crt2.c $(GCC_PASSES) \
$(TCONFIG_H) stmp-int-hdrs tsystem.h
diff --git a/gcc/config/t-darwin b/gcc/config/t-darwin
index bb5c31c84d6..bbb8ab58454 100644
--- a/gcc/config/t-darwin
+++ b/gcc/config/t-darwin
@@ -18,13 +18,16 @@ darwin-c.o: $(srcdir)/config/darwin-c.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
gt-darwin.h : s-gtype ; @true
# APPLE LOCAL begin mainline 2006-03-15 3992198
+ # APPLE LOCAL begin 4505290
# How to build crt3.o
EXTRA_MULTILIB_PARTS=crt3.o
$(T)crt3$(objext): $(srcdir)/config/darwin-crt3.c $(GCC_PASSES) \
$(TCONFIG_H) stmp-int-hdrs tsystem.h
$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) \
+ $(DARWIN_EXTRA_CRT_BUILD_CFLAGS) \
-c $(srcdir)/config/darwin-crt3.c -o $(T)crt3$(objext)
+ # APPLE LOCAL end 4505290
# APPLE LOCAL end mainline 2006-03-15 3992198
# Use unwind-dw2-fde-darwin
LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde-darwin.c \