summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0207-Backport-from-mainline.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0207-Backport-from-mainline.patch')
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0207-Backport-from-mainline.patch132
1 files changed, 132 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0207-Backport-from-mainline.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0207-Backport-from-mainline.patch
new file mode 100644
index 0000000000..43b3ee56fc
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0207-Backport-from-mainline.patch
@@ -0,0 +1,132 @@
1From 67ac9513e96e9d5996dd549a1d686e5fcb2c2397 Mon Sep 17 00:00:00 2001
2From: ro <ro@138bc75d-0d04-0410-961f-82ee72b054a4>
3Date: Mon, 2 May 2011 12:30:09 +0000
4Subject: [PATCH] Backport from mainline:
5 2011-04-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
6
7 * src/alpha/osf.S (UA_SI, FDE_ENCODING, FDE_ENCODE, FDE_ARANGE):
8 Define.
9 Use them to handle ELF vs. ECOFF differences.
10 [__osf__] (_GLOBAL__F_ffi_call_osf): Define.
11
12
13git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_6-branch@173246 138bc75d-0d04-0410-961f-82ee72b054a4
14
15index d0e7782..6b9f4df 100644
16--- a/libffi/src/alpha/osf.S
17+++ b/libffi/src/alpha/osf.S
18@@ -1,5 +1,5 @@
19 /* -----------------------------------------------------------------------
20- osf.S - Copyright (c) 1998, 2001, 2007, 2008 Red Hat
21+ osf.S - Copyright (c) 1998, 2001, 2007, 2008, 2011 Red Hat
22
23 Alpha/OSF Foreign Function Interface
24
25@@ -299,33 +299,51 @@ $load_table:
26 #endif
27
28 #ifdef __ELF__
29+# define UA_SI .4byte
30+# define FDE_ENCODING 0x1b /* pcrel sdata4 */
31+# define FDE_ENCODE(X) .4byte X-.
32+# define FDE_ARANGE(X) .4byte X
33+#elif defined __osf__
34+# define UA_SI .align 0; .long
35+# define FDE_ENCODING 0x50 /* aligned absolute */
36+# define FDE_ENCODE(X) .align 3; .quad X
37+# define FDE_ARANGE(X) .align 0; .quad X
38+#endif
39+
40+#ifdef __ELF__
41 .section .eh_frame,EH_FRAME_FLAGS,@progbits
42+#elif defined __osf__
43+ .data
44+ .align 3
45+ .globl _GLOBAL__F_ffi_call_osf
46+_GLOBAL__F_ffi_call_osf:
47+#endif
48 __FRAME_BEGIN__:
49- .4byte $LECIE1-$LSCIE1 # Length of Common Information Entry
50+ UA_SI $LECIE1-$LSCIE1 # Length of Common Information Entry
51 $LSCIE1:
52- .4byte 0x0 # CIE Identifier Tag
53+ UA_SI 0x0 # CIE Identifier Tag
54 .byte 0x1 # CIE Version
55 .ascii "zR\0" # CIE Augmentation
56 .byte 0x1 # uleb128 0x1; CIE Code Alignment Factor
57 .byte 0x78 # sleb128 -8; CIE Data Alignment Factor
58 .byte 26 # CIE RA Column
59 .byte 0x1 # uleb128 0x1; Augmentation size
60- .byte 0x1b # FDE Encoding (pcrel sdata4)
61+ .byte FDE_ENCODING # FDE Encoding
62 .byte 0xc # DW_CFA_def_cfa
63 .byte 30 # uleb128 column 30
64 .byte 0 # uleb128 offset 0
65 .align 3
66 $LECIE1:
67 $LSFDE1:
68- .4byte $LEFDE1-$LASFDE1 # FDE Length
69+ UA_SI $LEFDE1-$LASFDE1 # FDE Length
70 $LASFDE1:
71- .4byte $LASFDE1-__FRAME_BEGIN__ # FDE CIE offset
72- .4byte $LFB1-. # FDE initial location
73- .4byte $LFE1-$LFB1 # FDE address range
74+ UA_SI $LASFDE1-__FRAME_BEGIN__ # FDE CIE offset
75+ FDE_ENCODE($LFB1) # FDE initial location
76+ FDE_ARANGE($LFE1-$LFB1) # FDE address range
77 .byte 0x0 # uleb128 0x0; Augmentation size
78
79 .byte 0x4 # DW_CFA_advance_loc4
80- .4byte $LCFI1-$LFB1
81+ UA_SI $LCFI1-$LFB1
82 .byte 0x9a # DW_CFA_offset, column 26
83 .byte 4 # uleb128 4*-8
84 .byte 0x8f # DW_CFA_offset, column 15
85@@ -335,32 +353,35 @@ $LASFDE1:
86 .byte 32 # uleb128 offset 32
87
88 .byte 0x4 # DW_CFA_advance_loc4
89- .4byte $LCFI2-$LCFI1
90+ UA_SI $LCFI2-$LCFI1
91 .byte 0xda # DW_CFA_restore, column 26
92 .align 3
93 $LEFDE1:
94
95 $LSFDE3:
96- .4byte $LEFDE3-$LASFDE3 # FDE Length
97+ UA_SI $LEFDE3-$LASFDE3 # FDE Length
98 $LASFDE3:
99- .4byte $LASFDE3-__FRAME_BEGIN__ # FDE CIE offset
100- .4byte $LFB2-. # FDE initial location
101- .4byte $LFE2-$LFB2 # FDE address range
102+ UA_SI $LASFDE3-__FRAME_BEGIN__ # FDE CIE offset
103+ FDE_ENCODE($LFB2) # FDE initial location
104+ FDE_ARANGE($LFE2-$LFB2) # FDE address range
105 .byte 0x0 # uleb128 0x0; Augmentation size
106
107 .byte 0x4 # DW_CFA_advance_loc4
108- .4byte $LCFI5-$LFB2
109+ UA_SI $LCFI5-$LFB2
110 .byte 0xe # DW_CFA_def_cfa_offset
111 .byte 0x80,0x1 # uleb128 128
112
113 .byte 0x4 # DW_CFA_advance_loc4
114- .4byte $LCFI6-$LCFI5
115+ UA_SI $LCFI6-$LCFI5
116 .byte 0x9a # DW_CFA_offset, column 26
117 .byte 16 # uleb128 offset 16*-8
118 .align 3
119 $LEFDE3:
120+#if defined __osf__
121+ .align 0
122+ .long 0 # End of Table
123+#endif
124
125-#ifdef __linux__
126+#if defined __ELF__ && defined __linux__
127 .section .note.GNU-stack,"",@progbits
128 #endif
129-#endif
130--
1311.7.0.4
132