[Bug target/117010] [nvptx] Incorrect ptx code-gen for C++ code with templates

2025-04-16 Thread tschwinge at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117010 Thomas Schwinge changed: What|Removed |Added Last reconfirmed|2025-03-25 00:00:00 |2025-4-16 Resolution|---

[Bug target/117010] [nvptx] Incorrect ptx code-gen for C++ code with templates

2025-04-16 Thread tschwinge at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117010 --- Comment #9 from Thomas Schwinge --- For posterity: (In reply to myself from comment #4) > For the small test case posted here, > for 'V<0>::V()' I see in the '-O0' x86_64 host code: > > .section > .text._ZN1VILi0EEC2Ev,"

[Bug target/117010] [nvptx] Incorrect ptx code-gen for C++ code with templates

2025-03-25 Thread tschwinge at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117010 --- Comment #8 from Thomas Schwinge --- Well, indeed. Offloading code generation uses the LTO machinery, including the 'lto1' front end, and thus has 'gcc/common.opt:in_lto_p' set to 'true': ; True if this is the lto front end. This is us

[Bug target/117010] [nvptx] Incorrect ptx code-gen for C++ code with templates

2025-03-25 Thread tschwinge at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117010 --- Comment #7 from Thomas Schwinge --- First observation: the same (per my understanding) happens with LTO: compile this code, still at '-O0' with '-foffload=disable' but with '-flto', and see the x86_64 '[...].ltrans0.ltrans.s' file:

[Bug target/117010] [nvptx] Incorrect ptx code-gen for C++ code with templates

2025-03-25 Thread tschwinge at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117010 --- Comment #6 from Thomas Schwinge --- Thanks for having a look. In other words, you don't have an explanation off hand, why "weak" and "comdat" get lost in the GCN offloading path? GCN (ELF) does support all these things (to the best of my k

[Bug target/117010] [nvptx] Incorrect ptx code-gen for C++ code with templates

2025-03-25 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117010 --- Comment #5 from Jakub Jelinek --- C++ Itanium ABI has several types of constructors and destructors: ::= C1 # complete object constructor ::= C2 # base object constructor

[Bug target/117010] [nvptx] Incorrect ptx code-gen for C++ code with templates

2025-03-25 Thread tschwinge at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117010 Thomas Schwinge changed: What|Removed |Added Assignee|unassigned at gcc dot gnu.org |tschwinge at gcc dot gnu.org

[Bug target/117010] [nvptx] Incorrect ptx code-gen for C++ code with templates

2024-10-08 Thread tschwinge at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117010 Thomas Schwinge changed: What|Removed |Added Ever confirmed|0 |1 Keywords|

[Bug target/117010] [nvptx] Incorrect ptx code-gen for C++ code with templates

2024-10-08 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117010 Andrew Pinski changed: What|Removed |Added See Also||https://gcc.gnu.org/bugzill

[Bug target/117010] [nvptx] Incorrect ptx code-gen for C++ code with templates

2024-10-07 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117010 --- Comment #1 from Andrew Pinski --- It is not the template that is the issue here but the constructor where the alias comes from.