mirror of
https://github.com/Garhoogin/RuntimeCodeModules.git
synced 2025-06-19 08:55:33 -04:00
Get rid of old alignment hack
This commit is contained in:
parent
988ef820ce
commit
a608559cbf
@ -37,9 +37,4 @@ SECTIONS {
|
|||||||
_end = __bss_end__ ;
|
_end = __bss_end__ ;
|
||||||
__end__ = __bss_end__ ;
|
__end__ = __bss_end__ ;
|
||||||
}
|
}
|
||||||
|
|
||||||
.fill : {
|
|
||||||
. = ALIGN(4);
|
|
||||||
LONG(0) /* hack to make GCC actually align */
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Binary file not shown.
@ -75,6 +75,13 @@ public class RCMRelocator {
|
|||||||
b[offset + 2] = (byte) ((n >>> 16) & 0xFF);
|
b[offset + 2] = (byte) ((n >>> 16) & 0xFF);
|
||||||
b[offset + 3] = (byte) ((n >>> 24) & 0xFF);
|
b[offset + 3] = (byte) ((n >>> 24) & 0xFF);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static byte[] padBytes(byte[] b, int alignment) {
|
||||||
|
int paddedSize = ((b.length + (alignment - 1)) / alignment) * alignment;
|
||||||
|
byte[] padded = new byte[paddedSize];
|
||||||
|
System.arraycopy(b, 0, padded, 0, b.length);
|
||||||
|
return padded;
|
||||||
|
}
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
//read arguments. First RCM name, then relocation output from objdump, then symbol output
|
//read arguments. First RCM name, then relocation output from objdump, then symbol output
|
||||||
@ -127,7 +134,7 @@ public class RCMRelocator {
|
|||||||
|
|
||||||
//generate relocation section
|
//generate relocation section
|
||||||
try {
|
try {
|
||||||
byte[] rcm = Files.readAllBytes(Paths.get(rcmPath));
|
byte[] rcm = padBytes(Files.readAllBytes(Paths.get(rcmPath)), 4);
|
||||||
ByteArrayOutputStream baos = new ByteArrayOutputStream(); //relocation table
|
ByteArrayOutputStream baos = new ByteArrayOutputStream(); //relocation table
|
||||||
ByteArrayOutputStream thunks = new ByteArrayOutputStream(); //thunks (for ARM->THUMB B)
|
ByteArrayOutputStream thunks = new ByteArrayOutputStream(); //thunks (for ARM->THUMB B)
|
||||||
int nRelocations = 0;
|
int nRelocations = 0;
|
||||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user