blob: 35c8b65740bf62fc09cbd6b78080a8a2f4e29087 [file] [log] [blame]
From b0124f3c4f2a353506621d387135ebea6b8c6609 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 29 Oct 2020 22:40:53 -0700
Subject: [PATCH] crt: Add .file directive
Musl linked binaries come out to be not reproducible because
absolute build path is seen in debug info of crti.o and crtn.o
This is due to the fact that these objects are built from assembly
source files and they are missing .file directive
if we add .file <filename>.s in them then debug info encodes this
value instead of absolute path in debug_line section
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
crt/aarch64/crti.s | 1 +
crt/aarch64/crtn.s | 1 +
crt/arm/crti.s | 1 +
crt/arm/crtn.s | 1 +
crt/i386/crti.s | 1 +
crt/i386/crtn.s | 1 +
crt/microblaze/crti.s | 1 +
crt/microblaze/crtn.s | 1 +
crt/mips/crti.s | 1 +
crt/mips/crtn.s | 1 +
crt/mips64/crti.s | 1 +
crt/mips64/crtn.s | 1 +
crt/mipsn32/crti.s | 1 +
crt/mipsn32/crtn.s | 1 +
crt/or1k/crti.s | 1 +
crt/or1k/crtn.s | 1 +
crt/powerpc/crti.s | 1 +
crt/powerpc/crtn.s | 1 +
crt/powerpc64/crti.s | 1 +
crt/powerpc64/crtn.s | 1 +
crt/s390x/crti.s | 1 +
crt/s390x/crtn.s | 1 +
crt/sh/crti.s | 1 +
crt/sh/crtn.s | 1 +
crt/x32/crti.s | 1 +
crt/x32/crtn.s | 1 +
crt/x86_64/crti.s | 1 +
crt/x86_64/crtn.s | 1 +
28 files changed, 28 insertions(+)
--- a/crt/aarch64/crti.s
+++ b/crt/aarch64/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.section .init
.global _init
.type _init,%function
--- a/crt/aarch64/crtn.s
+++ b/crt/aarch64/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.section .init
ldp x29,x30,[sp],#16
ret
--- a/crt/arm/crti.s
+++ b/crt/arm/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.syntax unified
.section .init
--- a/crt/arm/crtn.s
+++ b/crt/arm/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.syntax unified
.section .init
--- a/crt/i386/crti.s
+++ b/crt/i386/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.section .init
.global _init
_init:
--- a/crt/i386/crtn.s
+++ b/crt/i386/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.section .init
add $12,%esp
ret
--- a/crt/microblaze/crti.s
+++ b/crt/microblaze/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.section .init
.global _init
.align 2
--- a/crt/microblaze/crtn.s
+++ b/crt/microblaze/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.section .init
lwi r15, r1, 0
rtsd r15, 8
--- a/crt/mips/crti.s
+++ b/crt/mips/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.set noreorder
.section .init
--- a/crt/mips/crtn.s
+++ b/crt/mips/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.set noreorder
.section .init
--- a/crt/mips64/crti.s
+++ b/crt/mips64/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.set noreorder
.section .init
--- a/crt/mips64/crtn.s
+++ b/crt/mips64/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.set noreorder
.section .init
--- a/crt/mipsn32/crti.s
+++ b/crt/mipsn32/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.set noreorder
.section .init
.global _init
--- a/crt/mipsn32/crtn.s
+++ b/crt/mipsn32/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.set noreorder
.section .init
ld $gp, 16($sp)
--- a/crt/or1k/crti.s
+++ b/crt/or1k/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.section .init
.global _init
_init:
--- a/crt/or1k/crtn.s
+++ b/crt/or1k/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.section .init
l.lwz r9,0(r1)
l.jr r9
--- a/crt/powerpc/crti.s
+++ b/crt/powerpc/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.section .init
.align 2
.global _init
--- a/crt/powerpc/crtn.s
+++ b/crt/powerpc/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.section .init
.align 2
lwz 0,36(1)
--- a/crt/powerpc64/crti.s
+++ b/crt/powerpc64/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.section .init
.align 2
.global _init
--- a/crt/powerpc64/crtn.s
+++ b/crt/powerpc64/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.section .init
.align 2
addi 1, 1, 32
--- a/crt/s390x/crti.s
+++ b/crt/s390x/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.section .init
.align 2
.global _init
--- a/crt/s390x/crtn.s
+++ b/crt/s390x/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.section .init
.align 2
lmg %r14, %r15, 272(%r15)
--- a/crt/sh/crti.s
+++ b/crt/sh/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.section .init
.global _init
.type _init, @function
--- a/crt/sh/crtn.s
+++ b/crt/sh/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.section .init
lds.l @r15+, pr
mov.l @r15+, r14
--- a/crt/x32/crti.s
+++ b/crt/x32/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.section .init
.global _init
_init:
--- a/crt/x32/crtn.s
+++ b/crt/x32/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.section .init
pop %rax
ret
--- a/crt/x86_64/crti.s
+++ b/crt/x86_64/crti.s
@@ -1,3 +1,4 @@
+.file "crti.s"
.section .init
.global _init
_init:
--- a/crt/x86_64/crtn.s
+++ b/crt/x86_64/crtn.s
@@ -1,3 +1,4 @@
+.file "crtn.s"
.section .init
pop %rax
ret