浏览代码

sparc64: Fix sparse warnings in visemul.c

1) edge8 tables should be static
2) add vis_emul() extern decl. to asm/visasm.h

Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller 16 年之前
父节点
当前提交
7e0b1e6186
共有 3 个文件被更改,包括 7 次插入7 次删除
  1. 1 0
      arch/sparc/include/asm/visasm.h
  2. 0 1
      arch/sparc64/kernel/traps.c
  3. 6 6
      arch/sparc64/kernel/visemul.c

+ 1 - 0
arch/sparc/include/asm/visasm.h

@@ -57,6 +57,7 @@ static inline void save_and_clear_fpu(void) {
 "		" : : "i" (FPRS_FEF|FPRS_DU) :
 "		" : : "i" (FPRS_FEF|FPRS_DU) :
 		"o5", "g1", "g2", "g3", "g7", "cc");
 		"o5", "g1", "g2", "g3", "g7", "cc");
 }
 }
+extern int vis_emul(struct pt_regs *, unsigned int);
 #endif
 #endif
 
 
 #endif /* _SPARC64_ASI_H */
 #endif /* _SPARC64_ASI_H */

+ 0 - 1
arch/sparc64/kernel/traps.c

@@ -2270,7 +2270,6 @@ void die_if_kernel(char *str, struct pt_regs *regs)
 
 
 extern int handle_popc(u32 insn, struct pt_regs *regs);
 extern int handle_popc(u32 insn, struct pt_regs *regs);
 extern int handle_ldf_stq(u32 insn, struct pt_regs *regs);
 extern int handle_ldf_stq(u32 insn, struct pt_regs *regs);
-extern int vis_emul(struct pt_regs *, unsigned int);
 
 
 void do_illegal_instruction(struct pt_regs *regs)
 void do_illegal_instruction(struct pt_regs *regs)
 {
 {

+ 6 - 6
arch/sparc64/kernel/visemul.c

@@ -243,7 +243,7 @@ static inline unsigned int *fps_regaddr(struct fpustate *f,
 struct edge_tab {
 struct edge_tab {
 	u16 left, right;
 	u16 left, right;
 };
 };
-struct edge_tab edge8_tab[8] = {
+static struct edge_tab edge8_tab[8] = {
 	{ 0xff, 0x80 },
 	{ 0xff, 0x80 },
 	{ 0x7f, 0xc0 },
 	{ 0x7f, 0xc0 },
 	{ 0x3f, 0xe0 },
 	{ 0x3f, 0xe0 },
@@ -253,7 +253,7 @@ struct edge_tab edge8_tab[8] = {
 	{ 0x03, 0xfe },
 	{ 0x03, 0xfe },
 	{ 0x01, 0xff },
 	{ 0x01, 0xff },
 };
 };
-struct edge_tab edge8_tab_l[8] = {
+static struct edge_tab edge8_tab_l[8] = {
 	{ 0xff, 0x01 },
 	{ 0xff, 0x01 },
 	{ 0xfe, 0x03 },
 	{ 0xfe, 0x03 },
 	{ 0xfc, 0x07 },
 	{ 0xfc, 0x07 },
@@ -263,23 +263,23 @@ struct edge_tab edge8_tab_l[8] = {
 	{ 0xc0, 0x7f },
 	{ 0xc0, 0x7f },
 	{ 0x80, 0xff },
 	{ 0x80, 0xff },
 };
 };
-struct edge_tab edge16_tab[4] = {
+static struct edge_tab edge16_tab[4] = {
 	{ 0xf, 0x8 },
 	{ 0xf, 0x8 },
 	{ 0x7, 0xc },
 	{ 0x7, 0xc },
 	{ 0x3, 0xe },
 	{ 0x3, 0xe },
 	{ 0x1, 0xf },
 	{ 0x1, 0xf },
 };
 };
-struct edge_tab edge16_tab_l[4] = {
+static struct edge_tab edge16_tab_l[4] = {
 	{ 0xf, 0x1 },
 	{ 0xf, 0x1 },
 	{ 0xe, 0x3 },
 	{ 0xe, 0x3 },
 	{ 0xc, 0x7 },
 	{ 0xc, 0x7 },
 	{ 0x8, 0xf },
 	{ 0x8, 0xf },
 };
 };
-struct edge_tab edge32_tab[2] = {
+static struct edge_tab edge32_tab[2] = {
 	{ 0x3, 0x2 },
 	{ 0x3, 0x2 },
 	{ 0x1, 0x3 },
 	{ 0x1, 0x3 },
 };
 };
-struct edge_tab edge32_tab_l[2] = {
+static struct edge_tab edge32_tab_l[2] = {
 	{ 0x3, 0x1 },
 	{ 0x3, 0x1 },
 	{ 0x2, 0x3 },
 	{ 0x2, 0x3 },
 };
 };