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
pierre
8f7707d474
Use correct field for sl_absolutetype or sl_typeconv ppropaccesslistitem type (revealed by compilation with -CriotR)
...
git-svn-id: trunk@40109 -
2018-10-31 14:43:18 +00:00
pierre
92acd38f40
Fix for bug report #34380
...
git-svn-id: trunk@39986 -
2018-10-18 20:21:54 +00:00
Jonas Maebe
0b246f3dbd
* converted Boolean8 to an internal type, and mapped Boolean to the
...
new internal pasbool1(type) (part of mantis #34411 )
o apply the _Bool x86-64 parameter passing rules only to pasbool1
git-svn-id: trunk@39949 -
2018-10-16 21:14:18 +00:00
florian
f48203b66f
* generate no uleb with differences for line information
...
git-svn-id: branches/laksen/riscv_new@39490 -
2018-07-22 19:43:47 +00:00
nickysn
052da5c921
* use DW_OP_reg0..DW_OP_reg31 instead of DW_OP_regx in TDebugInfoDwarf.append_seg_reg
...
in case the dwarf register number is 31 or smaller
git-svn-id: trunk@39131 -
2018-05-28 14:21:53 +00:00
nickysn
ad96cf758b
+ emit a DW_AT_address_class dwarf attribute on i8086 for procdefs, indicating
...
their call model (near or far)
git-svn-id: trunk@39120 -
2018-05-25 20:03:15 +00:00
nickysn
6bd99b65bf
+ emit DW_AT_frame_base dwarf attributes on i8086. Even though the Watcom
...
Debugger doesn't require them (it uses BP as the frame register by default),
the dwarf spec requires that we emit them on i8086, because we also use
DW_OP_fbreg on i8086.
git-svn-id: trunk@39112 -
2018-05-24 22:49:12 +00:00
nickysn
c5fe78201c
+ emit DW_OP_bregx dwarf ops for local variables and parameters, relative to BP
...
on i8086. This fixes Watcom Debugger not showing them right in memory models,
where DS<>SS (Watcom seems to ignore the DW_AT_segment attribute for register
relative variables, even though we emit it correctly :/ )
git-svn-id: trunk@39111 -
2018-05-24 22:27:11 +00:00
nickysn
855c810c09
+ emit a DW_AT_WATCOM_memory_model dwarf attribute, when compiling for i8086
...
git-svn-id: trunk@39110 -
2018-05-24 21:59:50 +00:00
nickysn
87e1fa8fc7
+ added enum with the values for DW_AT_WATCOM_memory_model
...
git-svn-id: trunk@39109 -
2018-05-24 21:50:55 +00:00
nickysn
dc12d4d789
+ added constants with the watcom dwarf attribute extensions
...
git-svn-id: trunk@39108 -
2018-05-24 21:49:28 +00:00
nickysn
749872aaf7
+ generate DW_AT_segment dwarf attribute for local variables and parameters on i8086
...
git-svn-id: trunk@39107 -
2018-05-24 21:30:37 +00:00
nickysn
217c75f84e
+ generate dwarf DW_AT_address_class attributes for pointer types on i8086
...
git-svn-id: trunk@39106 -
2018-05-24 20:22:59 +00:00
nickysn
76fb8c3afd
* fix for dwarf debug info generation of localsym vars with offset (thx Pierre for spotting this)
...
git-svn-id: trunk@39104 -
2018-05-24 16:31:01 +00:00
nickysn
69fbf0e0d8
* use unaligned constants, when writing the final dwarf arange record on i8086
...
git-svn-id: trunk@39103 -
2018-05-24 15:43:02 +00:00
nickysn
5417eb043d
* fix for the encoding of dwarf debug info of local variables, whose base is a
...
register that has a dwarf register number higher than 31
git-svn-id: trunk@39099 -
2018-05-23 15:58:51 +00:00
nickysn
308e439d5d
+ emit segment information in the dwarf debug info for static variables on i8086
...
git-svn-id: trunk@39082 -
2018-05-21 15:30:58 +00:00
nickysn
76ff01beda
+ also emit the non-standard DW_LNE_set_segment watcom extended opcode in the
...
dwarf line info on i8086
git-svn-id: trunk@39081 -
2018-05-21 14:54:11 +00:00
nickysn
9d167dbd2a
+ emit DW_AT_segment attributes in the dwarf debug info for subroutines
...
(DW_TAG_subprogram) on i8086
git-svn-id: trunk@39080 -
2018-05-21 14:40:39 +00:00
nickysn
4aa66d9033
* emit a 32-bit offset for DW_FORM_ref_addr on i8086 (Watcom compatibility)
...
git-svn-id: trunk@39077 -
2018-05-21 01:36:23 +00:00
nickysn
d1cdd8be7c
* do not emit padding bytes after the dwarf arange header on i8086 for
...
compatibility with Open Watcom (also, the dwarf spec is not very clear about
the alignment requirements on segmented architectures, so that's why we do
this by default, instead of putting it behind a -go debug switch)
git-svn-id: trunk@39075 -
2018-05-20 22:50:46 +00:00
nickysn
1a2f364e68
* use 32-bit address_size in the dwarf arange sections on i8086 (for Open Watcom
...
compatibility)
git-svn-id: trunk@39074 -
2018-05-20 21:59:32 +00:00
nickysn
0efb86518b
+ emit dwarf segment information on i8086 in the .debug_aranges section
...
git-svn-id: trunk@39073 -
2018-05-20 21:28:26 +00:00
nickysn
651571c00f
+ added comments, indicating where we emit the address_size and segment_size
...
fields of the dwarf arange header
git-svn-id: trunk@39072 -
2018-05-20 21:21:26 +00:00
nickysn
b048da4284
+ added the non-standard Open Watcom DWARF extension DW_LNE_set_segment extended
...
opcode constant; not emitted yet; will be needed on i8086
git-svn-id: trunk@39048 -
2018-05-20 12:25:03 +00:00
nickysn
600b460ecd
+ added new debug output option -godwarfomflinnum for generating line number
...
information in OMF LINNUM records, in addition to the DWARF debug information.
This enables source level debugging on i8086-msdos, when using the Open Watcom
Debugger, provided the source was compiled with this option and the external
linker (wlink) was used for generating the executable (the internal linker
does not yet support generating debug information).
git-svn-id: trunk@39014 -
2018-05-17 14:38:50 +00:00
pierre
e7d724981c
Replace $notes off/on by $push/$notes off/$pop to avoid getting note messages if notes are not on at start of unit compilation
...
git-svn-id: trunk@38718 -
2018-04-09 09:45:19 +00:00
nickysn
5bba79afb3
* use create_int_dataptr_unaligned instead of create_pint_unaligned in TDebugInfoDwarf.appendsym_absolute
...
git-svn-id: trunk@34837 -
2016-11-07 15:41:44 +00:00
nickysn
163d54c33e
* emit a sizeint-sized string length for long string constants in the DWARF
...
debug info, instead of using create_pint
git-svn-id: trunk@34649 -
2016-10-07 22:36:48 +00:00
yury
db590da1e6
* Added a new debug option switch -godwarfcpp - Simulate C++ debug information in DWARF. It is more correct way to workaround LLDB issues than in r34558. This option can be used for debuggers, which does not support Pascal correctly.
...
git-svn-id: trunk@34562 -
2016-09-26 13:05:17 +00:00
yury
c36faacd57
* dwarf: Internal option to generate a LLDB compatible debug info. It is enabled for the Android targets.
...
git-svn-id: trunk@34558 -
2016-09-23 15:51:55 +00:00
svenbarth
3a9f8e88fd
* don't write or reference debug information for a unit if it belongs to a/another package
...
git-svn-id: trunk@34382 -
2016-08-26 15:09:24 +00:00
Jonas Maebe
aa1be3276f
- removed default value of _typ parameter of TAsmData.(Weak)RefAsmSymbol():
...
it was AT_NONE, which is invalid and should never be used
* explicitly pass the correct value for all calls to those methods elsewhere
in the compiler
git-svn-id: trunk@34250 -
2016-08-05 07:09:16 +00:00