aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--masm/stubs/WTFStubs.cpp2
-rw-r--r--qv4isel_masm.cpp11
2 files changed, 8 insertions, 5 deletions
diff --git a/masm/stubs/WTFStubs.cpp b/masm/stubs/WTFStubs.cpp
index 2c642ac986..e4009b8315 100644
--- a/masm/stubs/WTFStubs.cpp
+++ b/masm/stubs/WTFStubs.cpp
@@ -27,7 +27,7 @@ uint32_t cryptographicallyRandomNumber()
return 0;
}
-static FILE* s_dataFile = stdout;
+static FILE* s_dataFile = stderr;
void setDataFile(FILE* f)
{
diff --git a/qv4isel_masm.cpp b/qv4isel_masm.cpp
index e6334970fd..98b9a71f50 100644
--- a/qv4isel_masm.cpp
+++ b/qv4isel_masm.cpp
@@ -19,7 +19,7 @@ using namespace QQmlJS::MASM;
using namespace QQmlJS::VM;
namespace {
-QTextStream qout(stdout, QIODevice::WriteOnly);
+QTextStream qout(stderr, QIODevice::WriteOnly);
}
static void printDisassmbleOutputWithCalls(const char* output, const QHash<void*, const char*>& functions)
@@ -31,7 +31,7 @@ static void printDisassmbleOutputWithCalls(const char* output, const QHash<void*
ptrString.prepend("0x");
processedOutput = processedOutput.replace(ptrString, it.value());
}
- fprintf(stdout, "%s\n", processedOutput.constData());
+ fprintf(stderr, "%s\n", processedOutput.constData());
}
InstructionSelection::InstructionSelection(VM::ExecutionEngine *engine, IR::Module *module, uchar *buffer)
@@ -102,9 +102,12 @@ void InstructionSelection::operator()(IR::Function *function)
FILE* disasmStream = open_memstream(&disasmOutput, &disasmLength);
WTF::setDataFile(disasmStream);
- _function->codeRef = linkBuffer.finalizeCodeWithDisassembly("operator()(IR::Function*)");
+ QByteArray name = _function->name->toUtf8();
+ if (name.startsWith('%'))
+ name.prepend('%');
+ _function->codeRef = linkBuffer.finalizeCodeWithDisassembly(name.data());
- WTF::setDataFile(stdout);
+ WTF::setDataFile(stderr);
fclose(disasmStream);
#if CPU(X86) || CPU(X86_64)
printDisassmbleOutputWithCalls(disasmOutput, functions);