| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 45ec702 commit acec799
2 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -36,7 +36,7 @@ | |||
| 36 | 36 | ||
| 37 | 37 | # Reset this number to 0 on major V8 upgrades. | |
| 38 | 38 | # Increment by one for each non-official patch applied to deps/v8. | |
| 39 | - 'v8_embedder_string': '-node.31', | ||
| 39 | + 'v8_embedder_string': '-node.32', | ||
| 40 | 40 | ||
| 41 | 41 | ##### V8 defaults for Node.js ##### | |
| 42 | 42 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1256,21 +1256,24 @@ void MacroAssembler::li(Register rd, Operand j, LiFlags mode) { | |||
| 1256 | 1256 | } | |
| 1257 | 1257 | ||
| 1258 | 1258 | void MacroAssembler::MultiPush(RegList regs) { | |
| 1259 | - int16_t stack_offset = 0; | ||
| 1259 | + int16_t num_to_push = regs.Count(); | ||
| 1260 | + int16_t stack_offset = num_to_push * kSystemPointerSize; | ||
| 1260 | 1261 | ||
| 1262 | + Sub_d(sp, sp, Operand(stack_offset)); | ||
| 1261 | 1263 | for (int16_t i = kNumRegisters - 1; i >= 0; i--) { | |
| 1262 | 1264 | if ((regs.bits() & (1 << i)) != 0) { | |
| 1263 | 1265 | stack_offset -= kSystemPointerSize; | |
| 1264 | 1266 | St_d(ToRegister(i), MemOperand(sp, stack_offset)); | |
| 1265 | 1267 | } | |
| 1266 | 1268 | } | |
| 1267 | - addi_d(sp, sp, stack_offset); | ||
| 1268 | 1269 | } | |
| 1269 | 1270 | ||
| 1270 | 1271 | void MacroAssembler::MultiPush(RegList regs1, RegList regs2) { | |
| 1271 | 1272 | DCHECK((regs1 & regs2).is_empty()); | |
| 1272 | - int16_t stack_offset = 0; | ||
| 1273 | + int16_t num_to_push = regs1.Count() + regs2.Count(); | ||
| 1274 | + int16_t stack_offset = num_to_push * kSystemPointerSize; | ||
| 1273 | 1275 | ||
| 1276 | + Sub_d(sp, sp, Operand(stack_offset)); | ||
| 1274 | 1277 | for (int16_t i = kNumRegisters - 1; i >= 0; i--) { | |
| 1275 | 1278 | if ((regs1.bits() & (1 << i)) != 0) { | |
| 1276 | 1279 | stack_offset -= kSystemPointerSize; | |
@@ -1283,15 +1286,16 @@ void MacroAssembler::MultiPush(RegList regs1, RegList regs2) { | |||
| 1283 | 1286 | St_d(ToRegister(i), MemOperand(sp, stack_offset)); | |
| 1284 | 1287 | } | |
| 1285 | 1288 | } | |
| 1286 | - addi_d(sp, sp, stack_offset); | ||
| 1287 | 1289 | } | |
| 1288 | 1290 | ||
| 1289 | 1291 | void MacroAssembler::MultiPush(RegList regs1, RegList regs2, RegList regs3) { | |
| 1290 | 1292 | DCHECK((regs1 & regs2).is_empty()); | |
| 1291 | 1293 | DCHECK((regs1 & regs3).is_empty()); | |
| 1292 | 1294 | DCHECK((regs2 & regs3).is_empty()); | |
| 1293 | - int16_t stack_offset = 0; | ||
| 1295 | + int16_t num_to_push = regs1.Count() + regs2.Count() + regs3.Count(); | ||
| 1296 | + int16_t stack_offset = num_to_push * kSystemPointerSize; | ||
| 1294 | 1297 | ||
| 1298 | + Sub_d(sp, sp, Operand(stack_offset)); | ||
| 1295 | 1299 | for (int16_t i = kNumRegisters - 1; i >= 0; i--) { | |
| 1296 | 1300 | if ((regs1.bits() & (1 << i)) != 0) { | |
| 1297 | 1301 | stack_offset -= kSystemPointerSize; | |
@@ -1310,7 +1314,6 @@ void MacroAssembler::MultiPush(RegList regs1, RegList regs2, RegList regs3) { | |||
| 1310 | 1314 | St_d(ToRegister(i), MemOperand(sp, stack_offset)); | |
| 1311 | 1315 | } | |
| 1312 | 1316 | } | |
| 1313 | - addi_d(sp, sp, stack_offset); | ||
| 1314 | 1317 | } | |
| 1315 | 1318 | ||
| 1316 | 1319 | void MacroAssembler::MultiPop(RegList regs) { | |
@@ -3563,9 +3566,8 @@ void MacroAssembler::EnterFrame(StackFrame::Type type) { | |||
| 3563 | 3566 | ||
| 3564 | 3567 | void MacroAssembler::LeaveFrame(StackFrame::Type type) { | |
| 3565 | 3568 | ASM_CODE_COMMENT(this); | |
| 3566 | - addi_d(sp, fp, 2 * kSystemPointerSize); | ||
| 3567 | - Ld_d(ra, MemOperand(fp, 1 * kSystemPointerSize)); | ||
| 3568 | - Ld_d(fp, MemOperand(fp, 0 * kSystemPointerSize)); | ||
| 3569 | + Move(sp, fp); | ||
| 3570 | + Pop(ra, fp); | ||
| 3569 | 3571 | } | |
| 3570 | 3572 | ||
| 3571 | 3573 | void MacroAssembler::EnterExitFrame(int stack_space, | |
| Back | FazBrowse Home | New Git URL |
0 commit comments