Module Name: src
Committed By: matt
Date: Tue Mar 31 11:59:41 UTC 2015
Modified Files:
src/lib/libc/arch/riscv/sys: brk.S sbrk.S
Log Message:
Use lla instead doing the pcrel relocs ourselves.
To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/lib/libc/arch/riscv/sys/brk.S \
src/lib/libc/arch/riscv/sys/sbrk.S
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/lib/libc/arch/riscv/sys/brk.S
diff -u src/lib/libc/arch/riscv/sys/brk.S:1.3 src/lib/libc/arch/riscv/sys/brk.S:1.4
--- src/lib/libc/arch/riscv/sys/brk.S:1.3 Fri Mar 27 23:23:14 2015
+++ src/lib/libc/arch/riscv/sys/brk.S Tue Mar 31 11:59:41 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: brk.S,v 1.3 2015/03/27 23:23:14 matt Exp $ */
+/* $NetBSD: brk.S,v 1.4 2015/03/31 11:59:41 matt Exp $ */
/*-
* Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
#include "SYS.h"
#if defined(LIBC_SCCS) && !defined(lint)
- RCSID("$NetBSD: brk.S,v 1.3 2015/03/27 23:23:14 matt Exp $")
+ RCSID("$NetBSD: brk.S,v 1.4 2015/03/31 11:59:41 matt Exp $")
#endif /* LIBC_SCCS and not lint */
.hidden _C_LABEL(__minbrk)
@@ -55,8 +55,7 @@ _C_LABEL(__curbrk):
.text
ENTRY(_brk)
-.L0: auipc t1, %pcrel_hi(_C_LABEL(__minbrk))
- addi t1, t1, %pcrel_lo(.L0)
+ lla t1, _C_LABEL(__minbrk)
PTR_L t5, 0(t1)
bgeu a0, t5, 1f
move a0, t5 # dont allow break < minbrk
Index: src/lib/libc/arch/riscv/sys/sbrk.S
diff -u src/lib/libc/arch/riscv/sys/sbrk.S:1.3 src/lib/libc/arch/riscv/sys/sbrk.S:1.4
--- src/lib/libc/arch/riscv/sys/sbrk.S:1.3 Fri Mar 27 23:23:14 2015
+++ src/lib/libc/arch/riscv/sys/sbrk.S Tue Mar 31 11:59:41 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: sbrk.S,v 1.3 2015/03/27 23:23:14 matt Exp $ */
+/* $NetBSD: sbrk.S,v 1.4 2015/03/31 11:59:41 matt Exp $ */
/*-
* Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -33,15 +33,13 @@
.hidden _C_LABEL(__curbrk)
.globl _C_LABEL(__curbrk)
- .globl _C_LABEL(_end)
#ifdef WEAK_ALIAS
WEAK_ALIAS(sbrk, _sbrk)
#endif
ENTRY(_sbrk)
-.L0: auipc t1, %pcrel_hi(_C_LABEL(__curbrk))
- addi t1, t1, %pcrel_lo(.L0)
+ lla t1, _C_LABEL(__curbrk)
PTR_L t2, 0(t1)
add a0, a0, t2 // compute current break
SYSTRAP(break)