Skip to content

Commit

Permalink
Merge branches 'sh/dwarf-unwinder', 'sh/g3-prep' and 'sh/stable-updates'
Browse files Browse the repository at this point in the history
  • Loading branch information
Paul Mundt committed Feb 8, 2010
3 parents 2e18e04 + 858918b + 9e9622d commit 13fd7ae
Show file tree
Hide file tree
Showing 6 changed files with 173 additions and 288 deletions.
19 changes: 7 additions & 12 deletions arch/sh/include/asm/dwarf.h
Original file line number Diff line number Diff line change
Expand Up @@ -243,16 +243,13 @@ struct dwarf_cie {

unsigned long cie_pointer;

struct list_head link;

unsigned long flags;
#define DWARF_CIE_Z_AUGMENTATION (1 << 0)

/*
* 'mod' will be non-NULL if this CIE came from a module's
* .eh_frame section.
*/
struct module *mod;
/* linked-list entry if this CIE is from a module */
struct list_head link;

struct rb_node node;
};

/**
Expand All @@ -266,13 +263,11 @@ struct dwarf_fde {
unsigned long address_range;
unsigned char *instructions;
unsigned char *end;

/* linked-list entry if this FDE is from a module */
struct list_head link;

/*
* 'mod' will be non-NULL if this FDE came from a module's
* .eh_frame section.
*/
struct module *mod;
struct rb_node node;
};

/**
Expand Down
17 changes: 16 additions & 1 deletion arch/sh/include/asm/module.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,22 @@
#ifndef _ASM_SH_MODULE_H
#define _ASM_SH_MODULE_H

#include <asm-generic/module.h>
struct mod_arch_specific {
#ifdef CONFIG_DWARF_UNWINDER
struct list_head fde_list;
struct list_head cie_list;
#endif
};

#ifdef CONFIG_64BIT
#define Elf_Shdr Elf64_Shdr
#define Elf_Sym Elf64_Sym
#define Elf_Ehdr Elf64_Ehdr
#else
#define Elf_Shdr Elf32_Shdr
#define Elf_Sym Elf32_Sym
#define Elf_Ehdr Elf32_Ehdr
#endif

#ifdef CONFIG_CPU_LITTLE_ENDIAN
# ifdef CONFIG_CPU_SH2
Expand Down
3 changes: 2 additions & 1 deletion arch/sh/kernel/cpu/sh3/entry.S
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,6 @@ ENTRY(tlb_protection_violation_store)
mov #1, r5

call_handle_tlbmiss:
setup_frame_reg
mov.l 1f, r0
mov r5, r8
mov.l @r0, r6
Expand Down Expand Up @@ -365,6 +364,8 @@ handle_exception:
mov.l @k2, k2 ! read out vector and keep in k2

handle_exception_special:
setup_frame_reg

! Setup return address and jump to exception handler
mov.l 7f, r9 ! fetch return address
stc r2_bank, r0 ! k2 (vector)
Expand Down
Loading

0 comments on commit 13fd7ae

Please sign in to comment.