WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
133340
Arrayify neglects to inform the clobberizer that it might fire watchpoints
https://bugs.webkit.org/show_bug.cgi?id=133340
Summary
Arrayify neglects to inform the clobberizer that it might fire watchpoints
Filip Pizlo
Reported
2014-05-27 23:23:34 PDT
And the 32-bit LLInt gets array profiles all wrong, which is probably the reason why this only showed up in 32-bit debug, and it also makes testing this in general much harder.
Attachments
the patch
(4.17 KB, patch)
2014-05-27 23:24 PDT
,
Filip Pizlo
mark.lam
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Filip Pizlo
Comment 1
2014-05-27 23:24:42 PDT
Created
attachment 232172
[details]
the patch
Mark Lam
Comment 2
2014-05-28 08:05:18 PDT
Comment on
attachment 232172
[details]
the patch r=me
Filip Pizlo
Comment 3
2014-05-28 12:01:02 PDT
Landed in
http://trac.webkit.org/changeset/169428
Csaba Osztrogonác
Comment 4
2014-05-28 12:39:18 PDT
Comment on
attachment 232172
[details]
the patch View in context:
https://bugs.webkit.org/attachment.cgi?id=232172&action=review
> Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm:1408 > - loadp JSCell::m_structureID[t3], t2 > + loadp t3, t2
It broke the ARM Thumb2 Linux build: [ 4%] Building CXX object Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o /tmp/ccowkxrW.s: Assembler messages: /tmp/ccowkxrW.s:3508: Error: cannot represent T32_OFFSET_IMM relocation in this object file format make[2]: *** [Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o] Error 1 And it broke the ARM Traditional Linux build: [ 4%] Building CXX object Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o /tmp/ccJfKxfJ.s: Assembler messages: /tmp/ccJfKxfJ.s:3449: Error: internal_relocation (type: OFFSET_IMM) not fixed up make[2]: *** [Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o] Error 1 make[1]: *** [Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/all] Error 2 Didn't you mean move t3, t2 here as the other part of the patch?
Filip Pizlo
Comment 5
2014-05-28 12:40:04 PDT
(In reply to
comment #4
)
> (From update of
attachment 232172
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=232172&action=review
> > > Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm:1408 > > - loadp JSCell::m_structureID[t3], t2 > > + loadp t3, t2 > > It broke the ARM Thumb2 Linux build: > [ 4%] Building CXX object Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o > /tmp/ccowkxrW.s: Assembler messages: > /tmp/ccowkxrW.s:3508: Error: cannot represent T32_OFFSET_IMM relocation in this object file format > make[2]: *** [Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o] Error 1 > > And it broke the ARM Traditional Linux build: > [ 4%] Building CXX object Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o > /tmp/ccJfKxfJ.s: Assembler messages: > /tmp/ccJfKxfJ.s:3449: Error: internal_relocation (type: OFFSET_IMM) not fixed up > make[2]: *** [Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o] Error 1 > make[1]: *** [Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/all] Error 2 > > Didn't you mean move t3, t2 here as the other part of the patch?
Yes.
Filip Pizlo
Comment 6
2014-05-28 12:42:34 PDT
(In reply to
comment #5
)
> (In reply to
comment #4
) > > (From update of
attachment 232172
[details]
[details]) > > View in context:
https://bugs.webkit.org/attachment.cgi?id=232172&action=review
> > > > > Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm:1408 > > > - loadp JSCell::m_structureID[t3], t2 > > > + loadp t3, t2 > > > > It broke the ARM Thumb2 Linux build: > > [ 4%] Building CXX object Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o > > /tmp/ccowkxrW.s: Assembler messages: > > /tmp/ccowkxrW.s:3508: Error: cannot represent T32_OFFSET_IMM relocation in this object file format > > make[2]: *** [Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o] Error 1 > > > > And it broke the ARM Traditional Linux build: > > [ 4%] Building CXX object Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o > > /tmp/ccJfKxfJ.s: Assembler messages: > > /tmp/ccJfKxfJ.s:3449: Error: internal_relocation (type: OFFSET_IMM) not fixed up > > make[2]: *** [Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o] Error 1 > > make[1]: *** [Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/all] Error 2 > > > > Didn't you mean move t3, t2 here as the other part of the patch? > > Yes.
Fixed in
http://trac.webkit.org/changeset/169431
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug