alpha: support R_ALPHA_REFLONG relocations for module loading
Since commit 71810db27c
(modversions: treat symbol CRCs
as 32 bit quantities) R_ALPHA_REFLONG relocations can be required
to load modules. This implements it.
Tested-by: Bob Tracy <rct@gherkin.frus.com>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Michael Cree <mcree@orcon.net.nz>
Signed-off-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
parent
4606f68faf
commit
4f61e0781b
1 changed files with 3 additions and 0 deletions
|
@ -181,6 +181,9 @@ apply_relocate_add(Elf64_Shdr *sechdrs, const char *strtab,
|
|||
switch (r_type) {
|
||||
case R_ALPHA_NONE:
|
||||
break;
|
||||
case R_ALPHA_REFLONG:
|
||||
*(u32 *)location = value;
|
||||
break;
|
||||
case R_ALPHA_REFQUAD:
|
||||
/* BUG() can produce misaligned relocations. */
|
||||
((u32 *)location)[0] = value;
|
||||
|
|
Loading…
Reference in a new issue