From 1143d08f7e0a5c203312f054a08301445cafdec8 Mon Sep 17 00:00:00 2001 From: Julius Werner Date: Fri, 5 Aug 2016 21:27:47 -0700 Subject: libpayload: head.S: Avoid clearing BSS (and heap) again 3 out of 4 architectures currently zero out the payload BSS in early assembly code, which is pointless since the code loading the payload has already done that (with a more efficient memset). ARM64 has never had any code like this and can run just fine without it. This also defeats the new optimization of moving the heap out of the BSS, since all three implementations assume that everything between _edata and _end is BSS. We should just take this out. Change-Id: I45cd2dabd94da43ff0f77e990f11c877cee6cda1 Signed-off-by: Julius Werner Reviewed-on: https://review.coreboot.org/16091 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin Reviewed-by: Stefan Reinauer --- payloads/libpayload/arch/mips/head.S | 10 ---------- 1 file changed, 10 deletions(-) (limited to 'payloads/libpayload/arch/mips') diff --git a/payloads/libpayload/arch/mips/head.S b/payloads/libpayload/arch/mips/head.S index c143e95844..203e0ae1bf 100644 --- a/payloads/libpayload/arch/mips/head.S +++ b/payloads/libpayload/arch/mips/head.S @@ -74,16 +74,6 @@ _entry: 1: lw $gp, 0($ra) - /* Clear .bss: start_bss = _edata, end_bss = _end */ - la $t0, _edata - sw $zero, ($t0) - la $t1, _end - 4 -clear_bss: - addiu $t0, 4 - sw $zero, ($t0) - bne $t0, $t1, clear_bss - nop - /* Save off the location of the coreboot tables */ la $at, cb_header_ptr sw $a0, 0x00($at) -- cgit v1.2.3