rpms/gcc/devel gcc44-ix86-insn-length.patch,1.1,1.2
Jakub Jelinek
jakub at fedoraproject.org
Tue Jun 9 16:09:51 UTC 2009
- Previous message (by thread): rpms/apr-util/devel apr-util-1.3.7-nodbmdso.patch, NONE, 1.1 apr-util.spec, 1.65, 1.66
- Next message (by thread): rpms/task/F-10 import.log, 1.2, 1.3 sources, 1.3, 1.4 task.spec, 1.2, 1.3
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: jakub
Update of /cvs/pkgs/rpms/gcc/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv9454
Modified Files:
gcc44-ix86-insn-length.patch
Log Message:
4.4.0-7
gcc44-ix86-insn-length.patch:
Index: gcc44-ix86-insn-length.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gcc/devel/gcc44-ix86-insn-length.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- gcc44-ix86-insn-length.patch 9 Jun 2009 14:26:58 -0000 1.1
+++ gcc44-ix86-insn-length.patch 9 Jun 2009 16:09:51 -0000 1.2
@@ -359,6 +359,49 @@
}
#ifdef HAVE_ATTR_length
+--- gcc/config/i386/i386.h.jj 2009-06-09 17:54:57.000000000 +0200
++++ gcc/config/i386/i386.h 2009-06-09 11:20:00.000000000 +0200
+@@ -2209,6 +2210,22 @@ do { \
+ #define ASM_OUTPUT_OPCODE(STREAM, PTR) \
+ ASM_OUTPUT_AVX_PREFIX ((STREAM), (PTR))
+
++/* A C statement to output to the stdio stream FILE an assembler
++ command to pad the location counter to a multiple of 1<<LOG
++ bytes if it is within MAX_SKIP bytes. */
++
++#ifdef HAVE_GAS_MAX_SKIP_P2ALIGN
++#undef ASM_OUTPUT_MAX_SKIP_PAD
++#define ASM_OUTPUT_MAX_SKIP_PAD(FILE, LOG, MAX_SKIP) \
++ if ((LOG) != 0) \
++ { \
++ if ((MAX_SKIP) == 0) \
++ fprintf ((FILE), "\t.p2align %d\n", (LOG)); \
++ else \
++ fprintf ((FILE), "\t.p2align %d,,%d\n", (LOG), (MAX_SKIP)); \
++ }
++#endif
++
+ /* Under some conditions we need jump tables in the text section,
+ because the assembler cannot handle label differences between
+ sections. This is the case for x86_64 on Mach-O for example. */
+--- gcc/config/i386/x86-64.h (revision 147670)
++++ gcc/config/i386/x86-64.h (revision 147671)
+@@ -81,6 +81,15 @@ see the files COPYING3 and COPYING.RUNTI
+ } \
+ } \
+ } while (0)
++#undef ASM_OUTPUT_MAX_SKIP_PAD
++#define ASM_OUTPUT_MAX_SKIP_PAD(FILE, LOG, MAX_SKIP) \
++ if ((LOG) != 0) \
++ { \
++ if ((MAX_SKIP) == 0) \
++ fprintf ((FILE), "\t.p2align %d\n", (LOG)); \
++ else \
++ fprintf ((FILE), "\t.p2align %d,,%d\n", (LOG), (MAX_SKIP)); \
++ }
+ #endif
+
+
--- gcc/config/i386/i386.c.jj 2009-06-09 10:24:35.000000000 +0200
+++ gcc/config/i386/i386.c 2009-06-09 12:10:01.000000000 +0200
@@ -8884,6 +8884,10 @@ ix86_decompose_address (rtx addr, struct
@@ -4611,6 +4654,27 @@
(set_attr "atom_unit" "jeu")
(set_attr "length_immediate" "0")
(set_attr "prefix_rep" "1")
+@@ -15317,16 +15682,16 @@ (define_insn "nop"
+ (set_attr "length_immediate" "0")
+ (set_attr "modrm" "0")])
+
+-;; Align to 16-byte boundary, max skip in op0. Used to avoid
++;; Pad to 16-byte boundary, max skip in op0. Used to avoid
+ ;; branch prediction penalty for the third jump in a 16-byte
+ ;; block on K8.
+
+-(define_insn "align"
++(define_insn "pad"
+ [(unspec_volatile [(match_operand 0 "" "")] UNSPECV_ALIGN)]
+ ""
+ {
+-#ifdef ASM_OUTPUT_MAX_SKIP_ALIGN
+- ASM_OUTPUT_MAX_SKIP_ALIGN (asm_out_file, 4, (int)INTVAL (operands[0]));
++#ifdef ASM_OUTPUT_MAX_SKIP_PAD
++ ASM_OUTPUT_MAX_SKIP_PAD (asm_out_file, 4, (int)INTVAL (operands[0]));
+ #else
+ /* It is tempting to use ASM_OUTPUT_ALIGN here, but we don't want to do that.
+ The align insn is used to avoid 3 jump instructions in the row to improve
@@ -15367,7 +15732,8 @@ (define_insn "set_got_rex64"
"TARGET_64BIT"
"lea{q}\t{_GLOBAL_OFFSET_TABLE_(%%rip), %0|%0, _GLOBAL_OFFSET_TABLE_[rip]}"
- Previous message (by thread): rpms/apr-util/devel apr-util-1.3.7-nodbmdso.patch, NONE, 1.1 apr-util.spec, 1.65, 1.66
- Next message (by thread): rpms/task/F-10 import.log, 1.2, 1.3 sources, 1.3, 1.4 task.spec, 1.2, 1.3
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list