From afcc36a417d6658a9f6a49558689e070cf81bd3e Mon Sep 17 00:00:00 2001 From: "christian.plesner.hansen@gmail.com" Date: Tue, 6 Jan 2009 13:24:52 +0000 Subject: [PATCH] Added runtime call to the logging infrastructure. Made some changes to the way regexps are being logged. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/codegen-arm.cc | 13 ++++++++ src/codegen-arm.h | 4 +++ src/codegen-ia32.cc | 19 +++++++++++ src/codegen-ia32.h | 4 +++ src/codegen.cc | 17 +++++++++- src/jsregexp.cc | 6 ---- src/log.cc | 61 ++++++++++++++++++++++++++---------- src/log.h | 15 ++++++--- src/regexp-delay.js | 1 + src/runtime.cc | 10 ++++++ src/runtime.h | 2 ++ src/string.js | 10 +++++- test/mjsunit/fuzz-natives.js | 3 +- 13 files changed, 135 insertions(+), 30 deletions(-) diff --git a/src/codegen-arm.cc b/src/codegen-arm.cc index 3453d52e5..e0cae7f6e 100644 --- a/src/codegen-arm.cc +++ b/src/codegen-arm.cc @@ -2577,6 +2577,19 @@ void CodeGenerator::GenerateIsSmi(ZoneList* args) { } +void CodeGenerator::GenerateLog(ZoneList* args) { + // See comment in CodeGenerator::GenerateLog in codegen-ia32.cc. + ASSERT_EQ(args->length(), 3); + if (ShouldGenerateLog(args->at(0))) { + Load(args->at(1)); + Load(args->at(2)); + __ CallRuntime(Runtime::kLog, 2); + } + __ mov(r0, Operand(Factory::undefined_value())); + frame_->Push(r0); +} + + void CodeGenerator::GenerateIsNonNegativeSmi(ZoneList* args) { ASSERT(args->length() == 1); Load(args->at(0)); diff --git a/src/codegen-arm.h b/src/codegen-arm.h index 42a05eca6..18f7a9212 100644 --- a/src/codegen-arm.h +++ b/src/codegen-arm.h @@ -195,6 +195,8 @@ class CodeGenerator: public AstVisitor { Handle