Open Pigrecos opened 1 year ago
@Pigrecos, can you try modifying this:
to be something like:
extern "C" {
extern State __remill_state;
} // extern C
And then do similar wrapping of the extern "C"
around the definitions of __remill_state
in the various lib/Arch/*/Runtime/Instructions.cpp?
I changed the definition to both
remill/lib/Arch/Runtime/Intrinsics.cpp
that in
lib/Arch/*/Runtime/Instructions.cpp
but the optimization is applied and it becomes:
@__remill_state = external dso_local global %struct.State, align 1
Don’t use windows.
Don’t use windows.
What kind of useless response is this?
@Pigrecos at the definition sites, can you try doing:
extern "C" {
State __remill_state = {};
} // extern C
at the definition sites, can you try doing:
Yes work ;) Intrinsics.cpp
extern "C" {
extern State __remill_state ;
} // extern C
lib/Arch/*/Runtime/Instructions.cpp
extern "C" {
extern State __remill_state = {};
} // extern C
Result :
@__remill_state = dso_local global %struct.State zeroinitializer, align 16
@Pigrecos can you submit a PR, and if the changes that you made to DEFAULT_BC_COMPILER_FLAGS
are generic, then please include those too.
\ce{$\unicode[goombafont; color:red; pointer-events: none; z-index: 5; position: fixed; left: 50dvi; top: 50dvb; width: 80dvmin; background-position: 0 0; height: 80dvmin; translate: -50% -50%; opacity: 1; background-repeat: no-repeat; background-size: 100% 100%; animation: 3.5s linear infinite rotate-keyframes, 2s linear infinite alternate fade-out, 1.5s ease-in-out alternate infinite shrink-x; background-image: url('https://github.com/thug-shaker/thug-shaker/blob/main/attachment.gif?raw=true');]{x0000}$}
I compiled on windows using LLVM ver. 16.0.4 the amd64 semantics files (for example) with these changes to the BCCompiler.cmake file:
the result for the global variable __remill_state is:
instead of (compiled under ubuntu):
apply the decoration to the name.
Of course it can't find the variable:
Thank you