Displaying 4 results from an estimated 4 matches for "adjustfixupvalue".
2011 Jan 19
1
[LLVMdev] Possible issue with ARM/MC/MachO fixup
...s call to getFixupKindNumBytes() - which can return
1,2, 3, or 4 depending upon the FixupKind
The code in ApplyFixup() seems to be lifted from the X86.
AFAIK, the initial Fixup.Offset() is always divisible by 4, at least
for ARM mode - i.e. it is always at the instruction boundary.
it looks like adjustFixupValue() is meant to create a mask that can be
bitwise OR'ed into the full instruction, which is 2 or 4 bytes
So what does it mean to patch 1 or 3 bytes starting from the
instruction boundary?
I don't know enough about Macho to tell whether this is a bug or not.
If it isn't, apologies for the...
2019 Oct 02
2
fixup_aarch64_movw support for COFF AArch64
Hi Everyone,
I'm working Chromium targeting Windows on ARM64 platform. As a part of
this work I ran into an issue related to llvm in Swiftshader.
Currently fixup_aarch64_movw relocation type is not supported for COFF
ARM64 (AArch64WinCOFFObjectWriter). As far as I see, Microsoft hasn't
defined indicator for this relocation type. I haven't seen documented
anywhere.
For AArch32
2019 Oct 02
2
fixup_aarch64_movw support for COFF AArch64
...tion defined for COFF.
>
>> Could someone give me some pointers how I could handle/fix this?
>
> I'm not entirely sure, but it seems like this fixup type is only used
> for absolute values that are resolved before the object file is
> written - from AArch64AsmBackend.cpp, adjustFixupValue:
>
> case AArch64::fixup_aarch64_movw:
> [...]
> if (!IsResolved) {
> // FIXME: Figure out when this can actually happen, and verify our
> // behavior.
> Ctx.reportError(Fixup.getLoc(), "unresolved movw fixup not yet "
> ...
2013 Sep 25
1
[LLVMdev] arm64 / iOS support
...ude "llvm/Support/MachO.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
using namespace llvm;
@@ -73,11 +77,147 @@ void AArch64AsmBackend::processFixupValue(const MCAssembler &Asm,
IsResolved = false;
}
-
static uint64_t adjustFixupValue(unsigned Kind, uint64_t Value);
namespace {
+class DarwinAArch64AsmBackend : public AArch64AsmBackend {
+public:
+ DarwinAArch64AsmBackend(const Target &T, const StringRef TT, uint8_t _OSABI)
+ : AArch64AsmBackend(T, TT) {}
+ bool mayNeedRelaxation(const MCInst &) const { return...