Commit Graph

328 Commits

Author SHA1 Message Date
Nikolay Nikolov
ee98fa8e3f + WebAssembly internal linker: support data relocations to threadvars, resolve
them as relative values to the beginning of the TLS section. Will be used for
  generating debug info for threadvars.
2024-09-10 23:56:00 +03:00
Nikolay Nikolov
d60300e807 + WebAssembly DWARF debug info: generate DW_AT_frame_base entries for functions 2024-09-10 21:42:11 +03:00
Nikolay Nikolov
97e5936f78 * generate debuginfo for WebAssembly threadvars like for normal vars, when
WebAssembly threads are turned off
2024-09-10 19:58:32 +03:00
Alligator-1
e87982e925 const array - reducing unnecessary data copying 2024-07-07 19:48:42 +05:00
florian
b313a66a47 * correct Dwarf-4 line info header as noted by Martin on the mailing list 2024-05-23 22:55:31 +02:00
Michaël Van Canneyt
fe62b3ace8 * Introduce constwresourcestring - in unicode mode, resource strings are unicode strings, and must be streamed differently 2024-02-13 19:44:36 +01:00
Pierre Muller
11b0b9dc57 Use reverse_byte to write constant sets in cross-endian configuration 2024-01-25 11:04:42 +00:00
Pierre Muller
637c34571e Avoid range check error in AddNormalStringDef 2024-01-10 23:24:46 +01:00
Nikolay Nikolov
fbcd90f286 + generate DWARF debug info for WebAssembly locals 2024-01-08 01:18:35 +02:00
florian
94cb1c3a49 * correctly name nested enum type debug symbols, resolves #40462 2023-10-10 23:16:31 +02:00
florian
8cd10d88cc * revert use of DW_AT_external for types as this is not covered by the dwarf standard 2023-03-23 22:44:00 +01:00
florian
4848327300 * write types declared in the interface section with a DW_AT_external tag, should resolve #40210 2023-03-22 21:16:49 +01:00
florian
f1f84a292c * don't not generate non-constant leb128 entriesm for riscv32-freertos 2023-02-10 21:28:39 +01:00
florian
36afcbf7fe * only i386 uses same special fastcall calling convention 2022-11-06 22:48:18 +01:00
florian
3fa77a4f62 * fix life information propagation for while loops, resolves #39971
* warnings/errors fixed which are caused by the new life information propagation
  + test
2022-10-24 22:13:43 +02:00
Martin
dd0711a27e Fix incorrect dwarf entry count. Issue #39928 introduced in 1b6982107f 2022-10-20 20:03:23 +00:00
florian
1b6982107f * TDebugInfoDwarf3.appenddef_object should not write an extra finish_entry for objects and C++ classes 2022-10-10 22:46:25 +02:00
florian
88cf633b97 * use append_object_struct also for dwarf-3 when creating dwarf debug info for objects, resolves #39920 2022-09-26 21:28:39 +02:00
florian
e28238da9b * handle absolute on strings correctly for dwarf debug info, resolves #39816 2022-07-05 23:04:57 +02:00
Jonas Maebe
4da1ad71a4 * moved a bunch of constants from dbgdwarf to dbgdwarfconst 2022-05-13 22:49:02 +02:00
Jonas Maebe
3d3c904ac5 TSymStr: more consistent usage 2022-05-08 15:03:44 +02:00
Joost van der Sluis
e547284588 * Section-offsets have 64 bits in the Dwarf-64 format 2022-01-29 23:57:49 +01:00
Joost van der Sluis
b26463ed99 * Removed unused parameter 2022-01-29 23:00:12 +01:00
florian
ca9384fd6c * patch by Dean Mustakino to avoid generation of debug info for generics, resolves #38827
+ test
2021-10-11 18:45:41 +02:00
florian
bae6ca6883 * Dwarf: write variant fields only if the require features are present, resolves #38651
git-svn-id: trunk@49032 -
2021-03-22 18:11:41 +00:00
nickysn
940738a3a1 * synchronized with trunk
git-svn-id: branches/wasm@48846 -
2021-03-01 13:21:24 +00:00
Jonas Maebe
9c831677ff * support Objective-C classes and protocols with -gw3 (mantis #36250)
git-svn-id: trunk@48834 -
2021-02-27 21:44:53 +00:00
nickysn
6f0a02a92d + apped end of symbol in TDebugInfoDwarf.afterappenddef
git-svn-id: branches/wasm@48510 -
2021-02-04 10:41:25 +00:00
nickysn
c073362928 - don't emit DEBUGSTART and DEBUGEND symbols for WebAssembly. See https://bugs.llvm.org/show_bug.cgi?id=48971
git-svn-id: branches/wasm@48509 -
2021-02-04 10:07:17 +00:00
nickysn
af12279bed * fixed local var dwarf debug info output for WebAssembly
git-svn-id: branches/wasm@48448 -
2021-01-28 17:15:14 +00:00
nickysn
fa30ae7d97 + added the DW_OP_WASM_location constant
git-svn-id: branches/wasm@48447 -
2021-01-28 16:25:35 +00:00
florian
637976e83f * patch by Marģers to unify internal error numbers, resolves #37888
git-svn-id: trunk@47103 -
2020-10-13 19:59:01 +00:00
Jonas Maebe
e7d1a77f9a * rename the ARM/AArch64-Darwin targets to ARM/AArch64-iOS
* rename the m68k/PowerPC-MacOS targets to m68k/PowerPC-MacOSClassic
  * repurpose the AArch64/Darwin target for AArch64/macOS
   o make AArch64-Darwin default target for a hosted AArch64-Darwin compiler

git-svn-id: trunk@45758 -
2020-07-10 21:52:24 +00:00
Jeppe Johansen
1201cc024e * Add riscv-embedded to targets that don't support non-constant leb128's.
git-svn-id: trunk@43851 -
2020-01-03 17:03:38 +00:00
svenbarth
e7715023da * fix for Mantis #35567: use the correct type for the size type of a dynamic array
git-svn-id: trunk@43264 -
2019-10-19 15:41:29 +00:00
florian
6e58178963 * do not write DW_AT_allocated and DW_AT_data_location tags for old style objects and cppobjects, resolves #36017
git-svn-id: trunk@43183 -
2019-10-13 10:06:48 +00:00
Jonas Maebe
3e11f1b2fe * fix length calculation of winlike widestrings in Dwarf 3 (patch by
Martin Friebe, mantis #35566)

git-svn-id: trunk@43182 -
2019-10-13 09:31:08 +00:00
Jonas Maebe
bdcda8660e * fix Dwarf 3 array location broken in r43171 (fix by Martin Friebe,
mantis #36144)

git-svn-id: trunk@43181 -
2019-10-13 07:37:42 +00:00
Jonas Maebe
6c29ecbd1c * moved array stride back to array entry (mantis #36144)
git-svn-id: trunk@43171 -
2019-10-12 12:25:07 +00:00
florian
8ecdb2e9ca + dwarf support for tls threadvars
git-svn-id: trunk@43134 -
2019-10-05 20:48:31 +00:00
Jeppe Johansen
ff3372567f - Applied patch by Christo Crause from #33914
git-svn-id: trunk@42493 -
2019-07-25 13:24:10 +00:00
svenbarth
755e271b4e * fix for Mantis #35566 by applying patch by Martin Friebe: correctly dereference the 32-bit length value for Windows Widestrings
git-svn-id: trunk@42087 -
2019-05-16 20:56:18 +00:00
Jonas Maebe
281b3ad276 * fix case completeness and unreachable code warnings in compiler that would
be introduced by the next commit

git-svn-id: trunk@42046 -
2019-05-12 14:29:03 +00:00
svenbarth
faaa9f94fa * addstringdef() now correctly declares the debug information for a Windows WideString, so use that instead of treating it merely like a PWideChar
git-svn-id: trunk@42039 -
2019-05-11 15:38:59 +00:00
svenbarth
e769233436 * fix for Mantis #35386: use the correct size for the string's length (SizeInt for Ansi-/UnicodeString and DWord for WideString)
git-svn-id: trunk@42038 -
2019-05-11 15:38:56 +00:00
svenbarth
1349f1db03 * fix for Mantis #35359: only WideString counts the size in Byte, UnicodeString uses the size in WideChars
git-svn-id: trunk@42037 -
2019-05-11 15:38:51 +00:00
Jonas Maebe
0b61b5d4cf * added extra header to ppu inside a subsection, so we won't run into
trouble when the ppu version hits 255
  * also moved several ppu flags to a set inside that section

git-svn-id: trunk@41846 -
2019-04-06 21:28:43 +00:00
yury
ad269dedd4 * If ds_dwarf_cpp (C++ emulation) is enabled, add DW_AT_linkage_name attribute for methods.
LLDB uses it to display fully qualified method names. Add a simple C++ mangled name without params to achieve at least "Class::Method()" instead of just "Method" in LLDB.

git-svn-id: trunk@40498 -
2018-12-07 20:55:50 +00:00
yury
f0d42db82d * When ds_dwarf_cpp option is enabled, use dwarf2 implementation of strings debug info. It makes LLDB happy.
git-svn-id: trunk@40492 -
2018-12-07 16:14:02 +00:00
Jonas Maebe
758a8dd34a * fixed dwarf debug info after r40398 (mantis #34622)
git-svn-id: trunk@40421 -
2018-11-29 23:21:15 +00:00