openrisc: Refactor 16-bit constant relocation
authorGeert Uytterhoeven <geert@linux-m68k.org>
Fri, 25 Oct 2013 14:37:56 +0000 (16:37 +0200)
committerJonas Bonn <jonas@southpole.se>
Tue, 5 Nov 2013 15:27:55 +0000 (16:27 +0100)
arch/openrisc/kernel/module.c: In function 'apply_relocate_add':
arch/openrisc/kernel/module.c:50:13: warning: assignment from incompatible pointer type
arch/openrisc/kernel/module.c:54:13: warning: assignment from incompatible pointer type

Move the pointer increments to the dereference statements to avoid
incompatible pointer assignments, and remove superfluous casts.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Jonas Bonn <jonas@southpole.se>
arch/openrisc/kernel/module.c

index 10ff50f..ef872ae 100644 (file)
@@ -47,12 +47,10 @@ int apply_relocate_add(Elf32_Shdr *sechdrs,
                        *location = value;
                        break;
                case R_OR32_CONST:
-                       location = (uint16_t *)location + 1;
-                       *((uint16_t *)location) = (uint16_t) (value);
+                       *((uint16_t *)location + 1) = value;
                        break;
                case R_OR32_CONSTH:
-                       location = (uint16_t *)location + 1;
-                       *((uint16_t *)location) = (uint16_t) (value >> 16);
+                       *((uint16_t *)location + 1) = value >> 16;
                        break;
                case R_OR32_JUMPTARG:
                        value -= (uint32_t)location;