|
Cache current thread in a reserved register and use it in LoadIsolate
Add THR register that caches the current thread in generated code.
Shuffle some registers around as needed to free one up.
Note: Assembler::LoadIsolate now always loads the *current* isolate whenever the code is executed, rather than the isolate in which the code was compiled (no existing code was affected by this slight change in semantics).
Rewrite some ia32 stubs to use one less register, and for some ia32 bigint intrinsics, explicitly save THR (like CTX in the past, see r44699).
Next steps:
- pass current thread rather than isolate in NativeArguments
- ditto for exception handler jump
- migrate fields vm_tag, top_exit_frame_info, etc. to thread
R=srdjan@google.com
Committed: https://github.com/dart-lang/sdk/commit/fd890f4097a8c52652e0e3bf3ba22f77d69904f0
Total comments: 4
Total comments: 3
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+290 lines, -187 lines) |
Patch |
|
M |
runtime/vm/assembler_arm.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/assembler_arm64.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/assembler_arm64_test.cc
|
View
|
1
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/assembler_arm_test.cc
|
View
|
|
1 chunk |
+4 lines, -2 lines |
0 comments
|
Download
|
|
M |
runtime/vm/assembler_ia32.h
|
View
|
1
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/assembler_ia32.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/assembler_ia32_test.cc
|
View
|
|
1 chunk |
+6 lines, -3 lines |
0 comments
|
Download
|
|
M |
runtime/vm/assembler_mips.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/assembler_mips_test.cc
|
View
|
1
|
1 chunk |
+6 lines, -3 lines |
0 comments
|
Download
|
|
M |
runtime/vm/assembler_test.cc
|
View
|
|
3 chunks |
+10 lines, -8 lines |
0 comments
|
Download
|
|
M |
runtime/vm/assembler_x64.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/assembler_x64_test.cc
|
View
|
|
2 chunks |
+3 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/constants_arm.h
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/constants_arm64.h
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/constants_ia32.h
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/constants_mips.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/constants_x64.h
|
View
|
1
2
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/dart_entry.h
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/dart_entry.cc
|
View
|
|
1 chunk |
+4 lines, -3 lines |
0 comments
|
Download
|
|
M |
runtime/vm/flow_graph_allocator.cc
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/flow_graph_compiler.cc
|
View
|
|
1 chunk |
+1 line, -0 lines |
3 comments
|
Download
|
|
M |
runtime/vm/flow_graph_compiler_arm.cc
|
View
|
|
6 chunks |
+21 lines, -21 lines |
0 comments
|
Download
|
|
M |
runtime/vm/intermediate_language_arm.cc
|
View
|
|
3 chunks |
+5 lines, -5 lines |
0 comments
|
Download
|
|
M |
runtime/vm/intrinsifier_arm.cc
|
View
|
1
2
3
|
15 chunks |
+28 lines, -27 lines |
0 comments
|
Download
|
|
M |
runtime/vm/intrinsifier_ia32.cc
|
View
|
|
13 chunks |
+63 lines, -25 lines |
0 comments
|
Download
|
|
M |
runtime/vm/isolate.h
|
View
|
1
|
1 chunk |
+5 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_arm.cc
|
View
|
1
|
8 chunks |
+29 lines, -23 lines |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_arm64.cc
|
View
|
1
|
3 chunks |
+7 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_ia32.cc
|
View
|
1
|
18 chunks |
+50 lines, -45 lines |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_mips.cc
|
View
|
1
|
3 chunks |
+7 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_x64.cc
|
View
|
1
|
8 chunks |
+19 lines, -13 lines |
0 comments
|
Download
|
|
M |
runtime/vm/thread.h
|
View
|
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
Total messages: 9 (1 generated)
|