public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug middle-end/113694] New: Allow renaming stack smashing protector symbols @ 2024-01-31 22:58 matheus.a.m.moreira at gmail dot com 2024-01-31 23:05 ` [Bug middle-end/113694] " pinskia at gcc dot gnu.org ` (4 more replies) 0 siblings, 5 replies; 6+ messages in thread From: matheus.a.m.moreira at gmail dot com @ 2024-01-31 22:58 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113694 Bug ID: 113694 Summary: Allow renaming stack smashing protector symbols Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: matheus.a.m.moreira at gmail dot com Target Milestone: --- I'm writing freestanding Linux applications which are compiled with -ffreestanding -nostdlib. In order to integrate with the stack smashing protector, I need to provide the following symbols: __stack_chk_guard __stack_chk_fail It would be nice if there was a compiler option to rename these symbols to something else. I want to make them consistent with the rest of my code, thereby improving its quality. A couple of options would be enough: -fstack-protector-canary=my_variable -fstack-protector-handler=my_function Attributes could work too: uintptr_t my_canary __attribute__((stack_protector_canary)); __attribute__((noreturn, stack_protector_handler)) void __stack_chk_fail(void); ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug middle-end/113694] Allow renaming stack smashing protector symbols 2024-01-31 22:58 [Bug middle-end/113694] New: Allow renaming stack smashing protector symbols matheus.a.m.moreira at gmail dot com @ 2024-01-31 23:05 ` pinskia at gcc dot gnu.org 2024-02-01 8:22 ` rguenth at gcc dot gnu.org ` (3 subsequent siblings) 4 siblings, 0 replies; 6+ messages in thread From: pinskia at gcc dot gnu.org @ 2024-01-31 23:05 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113694 Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug middle-end/113694] Allow renaming stack smashing protector symbols 2024-01-31 22:58 [Bug middle-end/113694] New: Allow renaming stack smashing protector symbols matheus.a.m.moreira at gmail dot com 2024-01-31 23:05 ` [Bug middle-end/113694] " pinskia at gcc dot gnu.org @ 2024-02-01 8:22 ` rguenth at gcc dot gnu.org 2024-02-02 0:31 ` matheus.a.m.moreira at gmail dot com ` (2 subsequent siblings) 4 siblings, 0 replies; 6+ messages in thread From: rguenth at gcc dot gnu.org @ 2024-02-01 8:22 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113694 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- You could provide an alias to __stack_chk_guard/__stack_chk_fail in your code though. ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug middle-end/113694] Allow renaming stack smashing protector symbols 2024-01-31 22:58 [Bug middle-end/113694] New: Allow renaming stack smashing protector symbols matheus.a.m.moreira at gmail dot com 2024-01-31 23:05 ` [Bug middle-end/113694] " pinskia at gcc dot gnu.org 2024-02-01 8:22 ` rguenth at gcc dot gnu.org @ 2024-02-02 0:31 ` matheus.a.m.moreira at gmail dot com 2024-02-02 0:35 ` sjames at gcc dot gnu.org 2024-02-14 9:00 ` matheus.a.m.moreira at gmail dot com 4 siblings, 0 replies; 6+ messages in thread From: matheus.a.m.moreira at gmail dot com @ 2024-02-02 0:31 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113694 --- Comment #2 from Matheus Afonso Martins Moreira <matheus.a.m.moreira at gmail dot com> --- That's true but in that case the __stack_chk_* symbols will remain in the compiler output and in the final binary. They will show up in readelf output, GDB function disassemblies. I think the ability to rename the symbols would be a cleaner solution. Programmers should have full control over the symbols emitted by the compiler. ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug middle-end/113694] Allow renaming stack smashing protector symbols 2024-01-31 22:58 [Bug middle-end/113694] New: Allow renaming stack smashing protector symbols matheus.a.m.moreira at gmail dot com ` (2 preceding siblings ...) 2024-02-02 0:31 ` matheus.a.m.moreira at gmail dot com @ 2024-02-02 0:35 ` sjames at gcc dot gnu.org 2024-02-14 9:00 ` matheus.a.m.moreira at gmail dot com 4 siblings, 0 replies; 6+ messages in thread From: sjames at gcc dot gnu.org @ 2024-02-02 0:35 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113694 Sam James <sjames at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |sjames at gcc dot gnu.org See Also| |https://gcc.gnu.org/bugzill | |a/show_bug.cgi?id=97119 --- Comment #3 from Sam James <sjames at gcc dot gnu.org> --- (In reply to Matheus Afonso Martins Moreira from comment #2) > Programmers should have full control over the symbols emitted by the > compiler. Note that this isn't something GCC offers for other things, e.g. PR97119. ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug middle-end/113694] Allow renaming stack smashing protector symbols 2024-01-31 22:58 [Bug middle-end/113694] New: Allow renaming stack smashing protector symbols matheus.a.m.moreira at gmail dot com ` (3 preceding siblings ...) 2024-02-02 0:35 ` sjames at gcc dot gnu.org @ 2024-02-14 9:00 ` matheus.a.m.moreira at gmail dot com 4 siblings, 0 replies; 6+ messages in thread From: matheus.a.m.moreira at gmail dot com @ 2024-02-14 9:00 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113694 --- Comment #4 from Matheus Afonso Martins Moreira <matheus.a.m.moreira at gmail dot com> --- (In reply to Sam James from comment #3) > Note that this isn't something GCC offers for other things, e.g. PR97119. GCC does offer it for at least one thing that I'm aware of: -e entry --entry=entry Specify that the program entry point is entry. The argument is interpreted by the linker; the GNU linker accepts either a symbol name or an address. With this useful option, I was able to change the somewhat ugly "_start" symbol to a name of my choosing. ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2024-02-14 9:00 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2024-01-31 22:58 [Bug middle-end/113694] New: Allow renaming stack smashing protector symbols matheus.a.m.moreira at gmail dot com 2024-01-31 23:05 ` [Bug middle-end/113694] " pinskia at gcc dot gnu.org 2024-02-01 8:22 ` rguenth at gcc dot gnu.org 2024-02-02 0:31 ` matheus.a.m.moreira at gmail dot com 2024-02-02 0:35 ` sjames at gcc dot gnu.org 2024-02-14 9:00 ` matheus.a.m.moreira at gmail dot com
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).