[PATCH] D19908: [X86] Support the "ms-hotpatch" attribute.
Charles Davis via llvm-commits
llvm-commits at lists.llvm.org
Mon May 16 13:14:34 PDT 2016
cdavis5x marked an inline comment as done.
================
Comment at: lib/Target/X86/X86AsmPrinter.cpp:76
@@ -75,1 +75,3 @@
+void X86AsmPrinter::EmitFunctionEntryLabel() {
+ // If a hotpatch function, we need to ensure 64 (32-bit) or 128 (64-bit)
----------------
rnk wrote:
> You should consider overriding EmitConstantPool instead, so the fill directive comes before the alignment directive:
> .text
> .fill 5, 1, 0xcc
> .align 2
> .global foo
> foo:
> movl %edi, %edi
> retq
>
> Are the hotpatching tools that we care about checking for 0xcc bytes, or will they overwrite alignment nops?
> Are the hotpatching tools that we care about checking for 0xcc bytes, or will they overwrite alignment nops?
It's not necessarily that tools care, it's that I think I'd prefer loudly crashing to getting stuck in an infinite loop if the patch forgets to jump back into the function. (I've added a comment clarifying this.)
http://reviews.llvm.org/D19908
More information about the llvm-commits
mailing list