forked from rpms/elfutils
		
	0.156-5 - Add elfutils-0.156-abi_cfi-ppc-s390-arm.patch.
Sets up initial CFI return register, CFA location expression and register rules for PPC, S390 and ARM (dwarf_cfi_addrframe support).
This commit is contained in:
		
							parent
							
								
									d0217a5719
								
							
						
					
					
						commit
						921351cf39
					
				
							
								
								
									
										497
									
								
								elfutils-0.156-abi_cfi-ppc-s390-arm.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										497
									
								
								elfutils-0.156-abi_cfi-ppc-s390-arm.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,497 @@ | ||||
| commit ed9d2cad539eef89abac0490bbcbf647758905e3 | ||||
| Author: Jan Kratochvil <jan.kratochvil@redhat.com> | ||||
| Date:   Tue Aug 27 22:49:36 2013 +0200 | ||||
| 
 | ||||
|     backends: Hook abi_cfi for ppc and s390. | ||||
|      | ||||
|     Signed-off-by: Jan Kratochvil <jan.kratochvil@redhat.com> | ||||
|     Signed-off-by: Mark Wielaard <mjw@redhat.com> | ||||
| 
 | ||||
| diff --git a/backends/Makefile.am b/backends/Makefile.am
 | ||||
| index 1923702..ec022b0 100644
 | ||||
| --- a/backends/Makefile.am
 | ||||
| +++ b/backends/Makefile.am
 | ||||
| @@ -1,6 +1,6 @@
 | ||||
|  ## Process this file with automake to create Makefile.in | ||||
|  ## | ||||
| -## Copyright (C) 2000-2010 Red Hat, Inc.
 | ||||
| +## Copyright (C) 2000-2010, 2013 Red Hat, Inc.
 | ||||
|  ## Copyright (C) 2012 Tilera Corporation | ||||
|  ## This file is part of elfutils. | ||||
|  ## | ||||
| @@ -85,17 +85,19 @@ libebl_sparc_pic_a_SOURCES = $(sparc_SRCS)
 | ||||
|  am_libebl_sparc_pic_a_OBJECTS = $(sparc_SRCS:.c=.os) | ||||
|   | ||||
|  ppc_SRCS = ppc_init.c ppc_symbol.c ppc_retval.c ppc_regs.c \ | ||||
| -	   ppc_corenote.c ppc_auxv.c ppc_attrs.c ppc_syscall.c
 | ||||
| +	   ppc_corenote.c ppc_auxv.c ppc_attrs.c ppc_syscall.c \
 | ||||
| +	   ppc_cfi.c
 | ||||
|  libebl_ppc_pic_a_SOURCES = $(ppc_SRCS) | ||||
|  am_libebl_ppc_pic_a_OBJECTS = $(ppc_SRCS:.c=.os) | ||||
|   | ||||
|  ppc64_SRCS = ppc64_init.c ppc64_symbol.c ppc64_retval.c \ | ||||
| -	     ppc64_corenote.c ppc_regs.c ppc_auxv.c ppc_attrs.c ppc_syscall.c
 | ||||
| +	     ppc64_corenote.c ppc_regs.c ppc_auxv.c ppc_attrs.c ppc_syscall.c \
 | ||||
| +	     ppc_cfi.c
 | ||||
|  libebl_ppc64_pic_a_SOURCES = $(ppc64_SRCS) | ||||
|  am_libebl_ppc64_pic_a_OBJECTS = $(ppc64_SRCS:.c=.os) | ||||
|   | ||||
|  s390_SRCS = s390_init.c s390_symbol.c s390_regs.c s390_retval.c \ | ||||
| -	    s390_corenote.c s390x_corenote.c
 | ||||
| +	    s390_corenote.c s390x_corenote.c s390_cfi.c
 | ||||
|  libebl_s390_pic_a_SOURCES = $(s390_SRCS) | ||||
|  am_libebl_s390_pic_a_OBJECTS = $(s390_SRCS:.c=.os) | ||||
|   | ||||
| diff --git a/backends/ppc64_init.c b/backends/ppc64_init.c
 | ||||
| index 90d4f2b..1435875 100644
 | ||||
| --- a/backends/ppc64_init.c
 | ||||
| +++ b/backends/ppc64_init.c
 | ||||
| @@ -1,5 +1,5 @@
 | ||||
|  /* Initialization of PPC64 specific backend library. | ||||
| -   Copyright (C) 2004, 2005, 2006, 2007, 2008 Red Hat, Inc.
 | ||||
| +   Copyright (C) 2004, 2005, 2006, 2007, 2008, 2013 Red Hat, Inc.
 | ||||
|     This file is part of elfutils. | ||||
|     Written by Ulrich Drepper <drepper@redhat.com>, 2004. | ||||
|   | ||||
| @@ -64,6 +64,7 @@ ppc64_init (elf, machine, eh, ehlen)
 | ||||
|    HOOK (eh, syscall_abi); | ||||
|    HOOK (eh, core_note); | ||||
|    HOOK (eh, auxv_info); | ||||
| +  HOOK (eh, abi_cfi);
 | ||||
|   | ||||
|    return MODVERSION; | ||||
|  } | ||||
| diff --git a/backends/ppc_cfi.c b/backends/ppc_cfi.c
 | ||||
| new file mode 100644 | ||||
| index 0000000..6a4f461
 | ||||
| --- /dev/null
 | ||||
| +++ b/backends/ppc_cfi.c
 | ||||
| @@ -0,0 +1,77 @@
 | ||||
| +/* ppc ABI-specified defaults for DWARF CFI.
 | ||||
| +   Copyright (C) 2012, 2013 Red Hat, Inc.
 | ||||
| +   This file is part of elfutils.
 | ||||
| +
 | ||||
| +   This file is free software; you can redistribute it and/or modify
 | ||||
| +   it under the terms of either
 | ||||
| +
 | ||||
| +     * the GNU Lesser General Public License as published by the Free
 | ||||
| +       Software Foundation; either version 3 of the License, or (at
 | ||||
| +       your option) any later version
 | ||||
| +
 | ||||
| +   or
 | ||||
| +
 | ||||
| +     * the GNU General Public License as published by the Free
 | ||||
| +       Software Foundation; either version 2 of the License, or (at
 | ||||
| +       your option) any later version
 | ||||
| +
 | ||||
| +   or both in parallel, as here.
 | ||||
| +
 | ||||
| +   elfutils is distributed in the hope that it will be useful, but
 | ||||
| +   WITHOUT ANY WARRANTY; without even the implied warranty of
 | ||||
| +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | ||||
| +   General Public License for more details.
 | ||||
| +
 | ||||
| +   You should have received copies of the GNU General Public License and
 | ||||
| +   the GNU Lesser General Public License along with this program.  If
 | ||||
| +   not, see <http://www.gnu.org/licenses/>.  */
 | ||||
| +
 | ||||
| +#ifdef HAVE_CONFIG_H
 | ||||
| +# include <config.h>
 | ||||
| +#endif
 | ||||
| +
 | ||||
| +#include <dwarf.h>
 | ||||
| +
 | ||||
| +#define BACKEND ppc_
 | ||||
| +#include "libebl_CPU.h"
 | ||||
| +
 | ||||
| +int
 | ||||
| +ppc_abi_cfi (Ebl *ebl __attribute__ ((unused)), Dwarf_CIE *abi_info)
 | ||||
| +{
 | ||||
| +  static const uint8_t abi_cfi[] =
 | ||||
| +    {
 | ||||
| +      /* This instruction is provided in every CIE.  It is not repeated here:
 | ||||
| +	 DW_CFA_def_cfa, ULEB128_7 (1), ULEB128_7 (0)  */
 | ||||
| +      /* r1 is assumed to be restored from cfa adress,
 | ||||
| +	 r1 acts as a stack frame pointer.  */
 | ||||
| +      DW_CFA_val_expression, ULEB128_7 (1), ULEB128_7 (1), DW_OP_nop,
 | ||||
| +      /* lr is not callee-saved but it needs to be preserved as it is pre-set
 | ||||
| +	 by the caller.  */
 | ||||
| +      DW_CFA_same_value, ULEB128_7 (65), /* lr */
 | ||||
| +
 | ||||
| +      /* Callee-saved regs.  */
 | ||||
| +#define SV(n) DW_CFA_same_value, ULEB128_7 (n)
 | ||||
| +      SV (2),			/* r2 is TOC pointer.  */
 | ||||
| +      SV (13),			/* Reserved as system thread id (is it for CFI?).  */
 | ||||
| +      /* r14-r31 are non-volatile registers.  */
 | ||||
| +      SV (14), SV (15), SV (16), SV (17), SV (18), SV (19), SV (20), SV (21),
 | ||||
| +      SV (22), SV (23), SV (24), SV (25), SV (26), SV (27), SV (28), SV (29),
 | ||||
| +      SV (30), SV (31)
 | ||||
| +      /* VMX registers v20-v31 and vrsave are non-volatile but they are
 | ||||
| +	 assigned DWARF registers 1144-1156 (v20-v31) which is outside of the
 | ||||
| +	 CFI supported range.  */
 | ||||
| +#undef SV
 | ||||
| +    };
 | ||||
| +
 | ||||
| +  abi_info->initial_instructions = abi_cfi;
 | ||||
| +  abi_info->initial_instructions_end = &abi_cfi[sizeof abi_cfi];
 | ||||
| +  abi_info->data_alignment_factor = ebl->class == ELFCLASS64 ? 8 : 4;
 | ||||
| +
 | ||||
| +  abi_info->return_address_register = 65;
 | ||||
| +
 | ||||
| +  return 0;
 | ||||
| +}
 | ||||
| +
 | ||||
| +__typeof (ppc_abi_cfi)
 | ||||
| +     ppc64_abi_cfi
 | ||||
| +     __attribute__ ((alias ("ppc_abi_cfi")));
 | ||||
| diff --git a/backends/ppc_init.c b/backends/ppc_init.c
 | ||||
| index 6054007..004c601 100644
 | ||||
| --- a/backends/ppc_init.c
 | ||||
| +++ b/backends/ppc_init.c
 | ||||
| @@ -1,5 +1,5 @@
 | ||||
|  /* Initialization of PPC specific backend library. | ||||
| -   Copyright (C) 2004, 2005, 2006, 2007, 2008 Red Hat, Inc.
 | ||||
| +   Copyright (C) 2004, 2005, 2006, 2007, 2008, 2013 Red Hat, Inc.
 | ||||
|     This file is part of elfutils. | ||||
|     Written by Ulrich Drepper <drepper@redhat.com>, 2004. | ||||
|   | ||||
| @@ -64,6 +64,7 @@ ppc_init (elf, machine, eh, ehlen)
 | ||||
|    HOOK (eh, core_note); | ||||
|    HOOK (eh, auxv_info); | ||||
|    HOOK (eh, check_object_attribute); | ||||
| +  HOOK (eh, abi_cfi);
 | ||||
|   | ||||
|    return MODVERSION; | ||||
|  } | ||||
| diff --git a/backends/s390_cfi.c b/backends/s390_cfi.c
 | ||||
| new file mode 100644 | ||||
| index 0000000..cb49486
 | ||||
| --- /dev/null
 | ||||
| +++ b/backends/s390_cfi.c
 | ||||
| @@ -0,0 +1,65 @@
 | ||||
| +/* s390 ABI-specified defaults for DWARF CFI.
 | ||||
| +   Copyright (C) 2012, 2013 Red Hat, Inc.
 | ||||
| +   This file is part of elfutils.
 | ||||
| +
 | ||||
| +   This file is free software; you can redistribute it and/or modify
 | ||||
| +   it under the terms of either
 | ||||
| +
 | ||||
| +     * the GNU Lesser General Public License as published by the Free
 | ||||
| +       Software Foundation; either version 3 of the License, or (at
 | ||||
| +       your option) any later version
 | ||||
| +
 | ||||
| +   or
 | ||||
| +
 | ||||
| +     * the GNU General Public License as published by the Free
 | ||||
| +       Software Foundation; either version 2 of the License, or (at
 | ||||
| +       your option) any later version
 | ||||
| +
 | ||||
| +   or both in parallel, as here.
 | ||||
| +
 | ||||
| +   elfutils is distributed in the hope that it will be useful, but
 | ||||
| +   WITHOUT ANY WARRANTY; without even the implied warranty of
 | ||||
| +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | ||||
| +   General Public License for more details.
 | ||||
| +
 | ||||
| +   You should have received copies of the GNU General Public License and
 | ||||
| +   the GNU Lesser General Public License along with this program.  If
 | ||||
| +   not, see <http://www.gnu.org/licenses/>.  */
 | ||||
| +
 | ||||
| +#ifdef HAVE_CONFIG_H
 | ||||
| +# include <config.h>
 | ||||
| +#endif
 | ||||
| +
 | ||||
| +#include <dwarf.h>
 | ||||
| +
 | ||||
| +#define BACKEND s390_
 | ||||
| +#include "libebl_CPU.h"
 | ||||
| +
 | ||||
| +int
 | ||||
| +s390_abi_cfi (Ebl *ebl, Dwarf_CIE *abi_info)
 | ||||
| +{
 | ||||
| +  static const uint8_t abi_cfi[] =
 | ||||
| +    {
 | ||||
| +      /* This instruction is provided in every CIE.  It is not repeated here:
 | ||||
| +	 DW_CFA_def_cfa, ULEB128_7 (15), ULEB128_7 (96)  */
 | ||||
| +      /* r14 is not callee-saved but it needs to be preserved as it is pre-set
 | ||||
| +	 by the caller.  */
 | ||||
| +      DW_CFA_same_value, ULEB128_7 (14), /* r14 */
 | ||||
| +
 | ||||
| +      /* Callee-saved regs.  */
 | ||||
| +#define SV(n) DW_CFA_same_value, ULEB128_7 (n)
 | ||||
| +      SV (6), SV (7), SV (8), SV (9), SV (10),		       /* r6-r13, r15 */
 | ||||
| +      SV (11), SV (12), SV (13), SV (15),
 | ||||
| +      SV (16 + 8), SV (16 + 9), SV (16 + 10), SV (16 + 11),    /* f8-f15 */
 | ||||
| +      SV (16 + 12), SV (16 + 13), SV (16 + 14), SV (16 + 15)
 | ||||
| +#undef SV
 | ||||
| +    };
 | ||||
| +
 | ||||
| +  abi_info->initial_instructions = abi_cfi;
 | ||||
| +  abi_info->initial_instructions_end = &abi_cfi[sizeof abi_cfi];
 | ||||
| +  abi_info->data_alignment_factor = ebl->class == ELFCLASS64 ? 8 : 4;
 | ||||
| +
 | ||||
| +  abi_info->return_address_register = 14;
 | ||||
| +
 | ||||
| +  return 0;
 | ||||
| +}
 | ||||
| diff --git a/backends/s390_init.c b/backends/s390_init.c
 | ||||
| index 91fe4b8..630a2ee 100644
 | ||||
| --- a/backends/s390_init.c
 | ||||
| +++ b/backends/s390_init.c
 | ||||
| @@ -1,5 +1,5 @@
 | ||||
|  /* Initialization of S/390 specific backend library. | ||||
| -   Copyright (C) 2005, 2006 Red Hat, Inc.
 | ||||
| +   Copyright (C) 2005, 2006, 2013 Red Hat, Inc.
 | ||||
|     This file is part of elfutils. | ||||
|   | ||||
|     This file is free software; you can redistribute it and/or modify | ||||
| @@ -61,6 +61,7 @@ s390_init (elf, machine, eh, ehlen)
 | ||||
|      eh->core_note = s390x_core_note; | ||||
|    else | ||||
|      HOOK (eh, core_note); | ||||
| +  HOOK (eh, abi_cfi);
 | ||||
|   | ||||
|    /* Only the 64-bit format uses the incorrect hash table entry size.  */ | ||||
|    if (eh->class == ELFCLASS64) | ||||
| 
 | ||||
| commit 92e47d616d15beec31c406ce254e639faa8fac2b | ||||
| Author: Mark Wielaard <mjw@redhat.com> | ||||
| Date:   Mon Sep 2 16:46:50 2013 +0200 | ||||
| 
 | ||||
|     backends: Hook abi_cfi for arm. | ||||
|      | ||||
|     New arm_abi_cfi that defines initial CFA, rules for callee-saved regs, | ||||
|     including VFP ones and return register. | ||||
|      | ||||
|     Note the DWARF abi extension for ARM says that "registers intentionally | ||||
|     unused" should also be initialized as if by DW_CFA_same_value.  The | ||||
|     example given is "an integer-only function might be included in one | ||||
|     executable file for targets with VFP and another for targets without". | ||||
|     We don't currently do this yet. See the DWARF and calling convention | ||||
|     documents: | ||||
|      | ||||
|     DWARF for the ARM Architecture ABI r2.09 | ||||
|     http://infocenter.arm.com/help/topic/com.arm.doc.ihi0040b/IHI0040B_aadwarf.pdf | ||||
|      | ||||
|     Procedure Call Standard for the ARM Architecture ABI r2.09 | ||||
|     http://infocenter.arm.com/help/topic/com.arm.doc.ihi0042e/IHI0042E_aapcs.pdf | ||||
|      | ||||
|     Signed-off-by: Mark Wielaard <mjw@redhat.com> | ||||
| 
 | ||||
| diff --git a/backends/Makefile.am b/backends/Makefile.am
 | ||||
| index ec022b0..557ed87 100644
 | ||||
| --- a/backends/Makefile.am
 | ||||
| +++ b/backends/Makefile.am
 | ||||
| @@ -75,7 +75,7 @@ libebl_alpha_pic_a_SOURCES = $(alpha_SRCS)
 | ||||
|  am_libebl_alpha_pic_a_OBJECTS = $(alpha_SRCS:.c=.os) | ||||
|   | ||||
|  arm_SRCS = arm_init.c arm_symbol.c arm_regs.c arm_corenote.c \ | ||||
| -	   arm_auxv.c arm_attrs.c arm_retval.c
 | ||||
| +	   arm_auxv.c arm_attrs.c arm_retval.c arm_cfi.c
 | ||||
|  libebl_arm_pic_a_SOURCES = $(arm_SRCS) | ||||
|  am_libebl_arm_pic_a_OBJECTS = $(arm_SRCS:.c=.os) | ||||
|   | ||||
| diff --git a/backends/arm_cfi.c b/backends/arm_cfi.c
 | ||||
| new file mode 100644 | ||||
| index 0000000..e0cc44b
 | ||||
| --- /dev/null
 | ||||
| +++ b/backends/arm_cfi.c
 | ||||
| @@ -0,0 +1,87 @@
 | ||||
| +/* arm ABI-specified defaults for DWARF CFI.
 | ||||
| +   Copyright (C) 2013 Red Hat, Inc.
 | ||||
| +   This file is part of elfutils.
 | ||||
| +
 | ||||
| +   This file is free software; you can redistribute it and/or modify
 | ||||
| +   it under the terms of either
 | ||||
| +
 | ||||
| +     * the GNU Lesser General Public License as published by the Free
 | ||||
| +       Software Foundation; either version 3 of the License, or (at
 | ||||
| +       your option) any later version
 | ||||
| +
 | ||||
| +   or
 | ||||
| +
 | ||||
| +     * the GNU General Public License as published by the Free
 | ||||
| +       Software Foundation; either version 2 of the License, or (at
 | ||||
| +       your option) any later version
 | ||||
| +
 | ||||
| +   or both in parallel, as here.
 | ||||
| +
 | ||||
| +   elfutils is distributed in the hope that it will be useful, but
 | ||||
| +   WITHOUT ANY WARRANTY; without even the implied warranty of
 | ||||
| +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | ||||
| +   General Public License for more details.
 | ||||
| +
 | ||||
| +   You should have received copies of the GNU General Public License and
 | ||||
| +   the GNU Lesser General Public License along with this program.  If
 | ||||
| +   not, see <http://www.gnu.org/licenses/>.  */
 | ||||
| +
 | ||||
| +#ifdef HAVE_CONFIG_H
 | ||||
| +# include <config.h>
 | ||||
| +#endif
 | ||||
| +
 | ||||
| +#include <dwarf.h>
 | ||||
| +
 | ||||
| +#define BACKEND arm_
 | ||||
| +#include "libebl_CPU.h"
 | ||||
| +
 | ||||
| +
 | ||||
| +/* ABI-specified state of DWARF CFI based on:
 | ||||
| +
 | ||||
| +   "DWARF for the ARM Architecture ABI r2.09"
 | ||||
| +http://infocenter.arm.com/help/topic/com.arm.doc.ihi0040b/IHI0040B_aadwarf.pdf
 | ||||
| +
 | ||||
| +   "Procedure Call Standard for the ARM Architecture ABI r2.09"
 | ||||
| +http://infocenter.arm.com/help/topic/com.arm.doc.ihi0042e/IHI0042E_aapcs.pdf
 | ||||
| +*/
 | ||||
| +
 | ||||
| +int
 | ||||
| +arm_abi_cfi (Ebl *ebl __attribute__ ((unused)), Dwarf_CIE *abi_info)
 | ||||
| +{
 | ||||
| +  static const uint8_t abi_cfi[] =
 | ||||
| +    {
 | ||||
| +      /* The initial Canonical Frame Address is the value of the
 | ||||
| +         Stack Pointer (r13) as setup in the previous frame. */
 | ||||
| +      DW_CFA_def_cfa, ULEB128_7 (13), ULEB128_7 (0),
 | ||||
| +
 | ||||
| +#define SV(n) DW_CFA_same_value, ULEB128_7 (n)
 | ||||
| +      /* Callee-saved regs r4-r8, r10, r11.  */
 | ||||
| +      SV (4), SV (5), SV (6), SV (7), SV (8), SV (10), SV (11),
 | ||||
| +
 | ||||
| +      /* The link register contains the return address setup by caller.  */
 | ||||
| +      SV (14),
 | ||||
| +      DW_CFA_register, ULEB128_7 (15), ULEB128_7 (14), /* pc = lr */
 | ||||
| +#undef SV
 | ||||
| +
 | ||||
| +      /* VFP S16-S31/D8-D15/Q4-Q7 are callee saved.
 | ||||
| +         And uleb128 encoded with two bytes.  */
 | ||||
| +#define ULEB128_8_2(x) ((x & 0x7f) | 0x80), 0x02
 | ||||
| +#define SV(n) DW_CFA_same_value, ULEB128_8_2 (n)
 | ||||
| +      SV (264), SV (265), SV (266), SV (267),
 | ||||
| +      SV (268), SV (269), SV (270), SV (271),
 | ||||
| +
 | ||||
| +      /* XXX Note: registers intentionally unused by the program,
 | ||||
| +	 for example as a consequence of the procedure call standard
 | ||||
| +	 should be initialized as if by DW_CFA_same_value.  */
 | ||||
| +    };
 | ||||
| +#undef ULEB128_8_2
 | ||||
| +#undef SV
 | ||||
| +
 | ||||
| +  abi_info->initial_instructions = abi_cfi;
 | ||||
| +  abi_info->initial_instructions_end = &abi_cfi[sizeof abi_cfi];
 | ||||
| +  abi_info->data_alignment_factor = 4;
 | ||||
| +
 | ||||
| +  abi_info->return_address_register = 15; /* pc.  */
 | ||||
| +
 | ||||
| +  return 0;
 | ||||
| +}
 | ||||
| diff --git a/backends/arm_init.c b/backends/arm_init.c
 | ||||
| index 38bd4eb..cf661ce 100644
 | ||||
| --- a/backends/arm_init.c
 | ||||
| +++ b/backends/arm_init.c
 | ||||
| @@ -1,5 +1,5 @@
 | ||||
|  /* Initialization of Arm specific backend library. | ||||
| -   Copyright (C) 2002, 2005, 2009 Red Hat, Inc.
 | ||||
| +   Copyright (C) 2002, 2005, 2009, 2013 Red Hat, Inc.
 | ||||
|     This file is part of elfutils. | ||||
|     Written by Ulrich Drepper <drepper@redhat.com>, 2002. | ||||
|   | ||||
| @@ -62,6 +62,7 @@ arm_init (elf, machine, eh, ehlen)
 | ||||
|    HOOK (eh, auxv_info); | ||||
|    HOOK (eh, check_object_attribute); | ||||
|    HOOK (eh, return_value_location); | ||||
| +  HOOK (eh, abi_cfi);
 | ||||
|   | ||||
|    return MODVERSION; | ||||
|  } | ||||
| diff -ur elfutils-0.156.orig/backends/Makefile.in elfutils-0.156/backends/Makefile.in
 | ||||
| --- elfutils-0.156.orig/backends/Makefile.in	2013-09-06 11:11:44.972085797 +0200
 | ||||
| +++ elfutils-0.156/backends/Makefile.in	2013-09-06 11:47:12.552642640 +0200
 | ||||
| @@ -112,7 +112,7 @@
 | ||||
|  libebl_arm_pic_a_LIBADD = | ||||
|  am__objects_2 = arm_init.$(OBJEXT) arm_symbol.$(OBJEXT) \ | ||||
|  	arm_regs.$(OBJEXT) arm_corenote.$(OBJEXT) arm_auxv.$(OBJEXT) \ | ||||
| -	arm_attrs.$(OBJEXT) arm_retval.$(OBJEXT)
 | ||||
| +	arm_attrs.$(OBJEXT) arm_retval.$(OBJEXT) arm_cfi.$(OBJEXT)
 | ||||
|  libebl_arm_pic_a_OBJECTS = $(am_libebl_arm_pic_a_OBJECTS) | ||||
|  libebl_i386_pic_a_AR = $(AR) $(ARFLAGS) | ||||
|  libebl_i386_pic_a_LIBADD = | ||||
| @@ -131,19 +131,21 @@
 | ||||
|  am__objects_5 = ppc64_init.$(OBJEXT) ppc64_symbol.$(OBJEXT) \ | ||||
|  	ppc64_retval.$(OBJEXT) ppc64_corenote.$(OBJEXT) \ | ||||
|  	ppc_regs.$(OBJEXT) ppc_auxv.$(OBJEXT) ppc_attrs.$(OBJEXT) \ | ||||
| -	ppc_syscall.$(OBJEXT)
 | ||||
| +	ppc_syscall.$(OBJEXT) ppc_cfi.$(OBJEXT)
 | ||||
|  libebl_ppc64_pic_a_OBJECTS = $(am_libebl_ppc64_pic_a_OBJECTS) | ||||
|  libebl_ppc_pic_a_AR = $(AR) $(ARFLAGS) | ||||
|  libebl_ppc_pic_a_LIBADD = | ||||
|  am__objects_6 = ppc_init.$(OBJEXT) ppc_symbol.$(OBJEXT) \ | ||||
|  	ppc_retval.$(OBJEXT) ppc_regs.$(OBJEXT) ppc_corenote.$(OBJEXT) \ | ||||
| -	ppc_auxv.$(OBJEXT) ppc_attrs.$(OBJEXT) ppc_syscall.$(OBJEXT)
 | ||||
| +	ppc_auxv.$(OBJEXT) ppc_attrs.$(OBJEXT) ppc_syscall.$(OBJEXT) \
 | ||||
| +	ppc_cfi.$(OBJEXT)
 | ||||
|  libebl_ppc_pic_a_OBJECTS = $(am_libebl_ppc_pic_a_OBJECTS) | ||||
|  libebl_s390_pic_a_AR = $(AR) $(ARFLAGS) | ||||
|  libebl_s390_pic_a_LIBADD = | ||||
|  am__objects_7 = s390_init.$(OBJEXT) s390_symbol.$(OBJEXT) \ | ||||
|  	s390_regs.$(OBJEXT) s390_retval.$(OBJEXT) \ | ||||
| -	s390_corenote.$(OBJEXT) s390x_corenote.$(OBJEXT)
 | ||||
| +	s390_corenote.$(OBJEXT) s390x_corenote.$(OBJEXT) \
 | ||||
| +	s390_cfi.$(OBJEXT)
 | ||||
|  libebl_s390_pic_a_OBJECTS = $(am_libebl_s390_pic_a_OBJECTS) | ||||
|  libebl_sh_pic_a_AR = $(AR) $(ARFLAGS) | ||||
|  libebl_sh_pic_a_LIBADD = | ||||
| @@ -405,7 +407,7 @@
 | ||||
|  libebl_alpha_pic_a_SOURCES = $(alpha_SRCS) | ||||
|  am_libebl_alpha_pic_a_OBJECTS = $(alpha_SRCS:.c=.os) | ||||
|  arm_SRCS = arm_init.c arm_symbol.c arm_regs.c arm_corenote.c \ | ||||
| -	   arm_auxv.c arm_attrs.c arm_retval.c
 | ||||
| +	   arm_auxv.c arm_attrs.c arm_retval.c arm_cfi.c
 | ||||
|   | ||||
|  libebl_arm_pic_a_SOURCES = $(arm_SRCS) | ||||
|  am_libebl_arm_pic_a_OBJECTS = $(arm_SRCS:.c=.os) | ||||
| @@ -415,17 +417,19 @@
 | ||||
|  libebl_sparc_pic_a_SOURCES = $(sparc_SRCS) | ||||
|  am_libebl_sparc_pic_a_OBJECTS = $(sparc_SRCS:.c=.os) | ||||
|  ppc_SRCS = ppc_init.c ppc_symbol.c ppc_retval.c ppc_regs.c \ | ||||
| -	   ppc_corenote.c ppc_auxv.c ppc_attrs.c ppc_syscall.c
 | ||||
| +	   ppc_corenote.c ppc_auxv.c ppc_attrs.c ppc_syscall.c \
 | ||||
| +	   ppc_cfi.c
 | ||||
|   | ||||
|  libebl_ppc_pic_a_SOURCES = $(ppc_SRCS) | ||||
|  am_libebl_ppc_pic_a_OBJECTS = $(ppc_SRCS:.c=.os) | ||||
|  ppc64_SRCS = ppc64_init.c ppc64_symbol.c ppc64_retval.c \ | ||||
| -	     ppc64_corenote.c ppc_regs.c ppc_auxv.c ppc_attrs.c ppc_syscall.c
 | ||||
| +	     ppc64_corenote.c ppc_regs.c ppc_auxv.c ppc_attrs.c ppc_syscall.c \
 | ||||
| +	     ppc_cfi.c
 | ||||
|   | ||||
|  libebl_ppc64_pic_a_SOURCES = $(ppc64_SRCS) | ||||
|  am_libebl_ppc64_pic_a_OBJECTS = $(ppc64_SRCS:.c=.os) | ||||
|  s390_SRCS = s390_init.c s390_symbol.c s390_regs.c s390_retval.c \ | ||||
| -	    s390_corenote.c s390x_corenote.c
 | ||||
| +	    s390_corenote.c s390x_corenote.c s390_cfi.c
 | ||||
|   | ||||
|  libebl_s390_pic_a_SOURCES = $(s390_SRCS) | ||||
|  am_libebl_s390_pic_a_OBJECTS = $(s390_SRCS:.c=.os) | ||||
| @@ -544,6 +548,7 @@
 | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alpha_symbol.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/arm_attrs.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/arm_auxv.Po@am__quote@ | ||||
| +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/arm_cfi.Po@am__quote@
 | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/arm_corenote.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/arm_init.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/arm_regs.Po@am__quote@ | ||||
| @@ -567,12 +572,14 @@
 | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppc64_symbol.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppc_attrs.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppc_auxv.Po@am__quote@ | ||||
| +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppc_cfi.Po@am__quote@
 | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppc_corenote.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppc_init.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppc_regs.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppc_retval.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppc_symbol.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppc_syscall.Po@am__quote@ | ||||
| +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/s390_cfi.Po@am__quote@
 | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/s390_corenote.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/s390_init.Po@am__quote@ | ||||
|  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/s390_regs.Po@am__quote@ | ||||
| @ -1,7 +1,7 @@ | ||||
| Name: elfutils | ||||
| Summary: A collection of utilities and DSOs to handle compiled objects | ||||
| Version: 0.156 | ||||
| %global baserelease 4 | ||||
| %global baserelease 5 | ||||
| URL: https://fedorahosted.org/elfutils/ | ||||
| %global source_url http://fedorahosted.org/releases/e/l/elfutils/%{version}/ | ||||
| License: GPLv3+ and (GPLv2+ or LGPLv3+) | ||||
| @ -47,6 +47,7 @@ Patch1: %{?source_url}elfutils-robustify.patch | ||||
| Patch2: %{?source_url}elfutils-portability.patch | ||||
| 
 | ||||
| Patch3: elfutils-0.156-et_dyn-kernels.patch | ||||
| Patch4: elfutils-0.156-abi_cfi-ppc-s390-arm.patch | ||||
| 
 | ||||
| %if !%{compat} | ||||
| Release: %{baserelease}%{?dist} | ||||
| @ -212,6 +213,7 @@ sed -i.scanf-m -e 's/%m/%a/g' src/addr2line.c tests/line2addr.c | ||||
| %endif | ||||
| 
 | ||||
| %patch3 -p1 -b .et_dyn-kernel | ||||
| %patch4 -p1 -b .abi_cfi | ||||
| 
 | ||||
| find . -name \*.sh ! -perm -0100 -print | xargs chmod +x | ||||
| 
 | ||||
| @ -327,6 +329,11 @@ rm -rf ${RPM_BUILD_ROOT} | ||||
| %{_libdir}/libelf.a | ||||
| 
 | ||||
| %changelog | ||||
| * Fri Sep 06 2013 Mark Wielaard <mjw@redhat.com> 0.156-5 | ||||
| - Add elfutils-0.156-abi_cfi-ppc-s390-arm.patch. | ||||
|   Sets up initial CFI return register, CFA location expression and | ||||
|   register rules for PPC, S390 and ARM (dwarf_cfi_addrframe support). | ||||
| 
 | ||||
| * Mon Aug 26 2013 Mark Wielaard <mjw@redhat.com> 0.156-4 | ||||
| - Add elfutils-0.156-et_dyn-kernels.patch. | ||||
|   Fixes an issue on ppc64 with systemtap kernel address placement. | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user