Skip to content

Commit 2be008e

Browse files
committed
Remove __VOID_POINTER type and move vtable module to lowering folder
The `__VOID_POINTER` type isn't really neccessary hence removed. Also the `vtable.rs` file was previously in the root direct but has now been moved to `lowering/vtable.rs`. With the former change some tests needed to be updated.
1 parent b2aa903 commit 2be008e

24 files changed

+243
-204
lines changed

compiler/plc_driver/src/pipelines.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,16 @@ use plc::{
2424
codegen::{CodegenContext, GeneratedModule},
2525
index::{indexer, FxIndexSet, Index},
2626
linker::LinkerType,
27-
lowering::{calls::AggregateTypeLowerer, property::PropertyLowerer, InitVisitor},
27+
lowering::{
28+
calls::AggregateTypeLowerer, property::PropertyLowerer, vtable::VTableGenerator, InitVisitor,
29+
},
2830
output::FormatOption,
2931
parser::parse_file,
3032
resolver::{
3133
const_evaluator::UnresolvableConstant, AnnotationMapImpl, AstAnnotations, Dependency, StringLiterals,
3234
TypeAnnotator,
3335
},
3436
validation::Validator,
35-
vtable::VTableGenerator,
3637
ConfigFormat, ErrorFormat, OnlineChange, Target, Threads,
3738
};
3839
use plc_diagnostics::{

compiler/plc_driver/src/pipelines/participant.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,10 @@ use std::{
1313

1414
use ast::provider::IdProvider;
1515
use plc::{
16-
codegen::GeneratedModule, lowering::calls::AggregateTypeLowerer, output::FormatOption,
17-
vtable::VTableGenerator, ConfigFormat, OnlineChange, Target,
16+
codegen::GeneratedModule,
17+
lowering::{calls::AggregateTypeLowerer, vtable::VTableGenerator},
18+
output::FormatOption,
19+
ConfigFormat, OnlineChange, Target,
1820
};
1921
use plc_diagnostics::diagnostics::Diagnostic;
2022
use plc_lowering::inheritance::InheritanceLowerer;

compiler/plc_driver/src/tests/.multi_files.rs.pending-snap

Lines changed: 0 additions & 3 deletions
This file was deleted.

compiler/plc_driver/src/tests/multi_files.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ fn forward_declared_constant_is_also_marked_constant() {
224224
!11 = !DIFile(filename: "external_file2.st", directory: "")
225225
!12 = !{!13, !16}
226226
!13 = !DIDerivedType(tag: DW_TAG_member, name: "__vtable", scope: !11, file: !11, baseType: !14, size: 64, align: 64, flags: DIFlagPublic)
227-
!14 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__VOID_POINTER", baseType: !15, size: 64, align: 64, dwarfAddressSpace: 1)
227+
!14 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__foo___vtable", baseType: !15, size: 64, align: 64, dwarfAddressSpace: 1)
228228
!15 = !DIBasicType(name: "__VOID", encoding: DW_ATE_unsigned, flags: DIFlagPublic)
229229
!16 = !DIDerivedType(tag: DW_TAG_member, name: "something_to_initialize", scope: !11, file: !11, line: 14, baseType: !17, size: 16, align: 16, offset: 64, flags: DIFlagPublic)
230230
!17 = !DIBasicType(name: "INT", size: 16, encoding: DW_ATE_signed, flags: DIFlagPublic)
@@ -297,7 +297,7 @@ fn forward_declared_constant_is_also_marked_constant() {
297297
!13 = !DICompositeType(tag: DW_TAG_structure_type, name: "foo", scope: !2, file: !2, line: 12, size: 128, align: 64, flags: DIFlagPublic, elements: !14, identifier: "foo")
298298
!14 = !{!15, !18}
299299
!15 = !DIDerivedType(tag: DW_TAG_member, name: "__vtable", scope: !2, file: !2, baseType: !16, size: 64, align: 64, flags: DIFlagPublic)
300-
!16 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__VOID_POINTER", baseType: !17, size: 64, align: 64, dwarfAddressSpace: 1)
300+
!16 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__foo___vtable", baseType: !17, size: 64, align: 64, dwarfAddressSpace: 1)
301301
!17 = !DIBasicType(name: "__VOID", encoding: DW_ATE_unsigned, flags: DIFlagPublic)
302302
!18 = !DIDerivedType(tag: DW_TAG_member, name: "something_to_initialize", scope: !2, file: !2, line: 14, baseType: !4, size: 16, align: 16, offset: 64, flags: DIFlagPublic)
303303
!19 = !{i32 2, !"Dwarf Version", i32 5}

src/codegen/tests/debug_tests.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -436,7 +436,7 @@ fn dbg_declare_has_valid_metadata_references_for_methods() {
436436
!4 = !DICompositeType(tag: DW_TAG_structure_type, name: "fb", scope: !2, file: !2, line: 2, size: 64, align: 64, flags: DIFlagPublic, elements: !5, identifier: "fb")
437437
!5 = !{!6}
438438
!6 = !DIDerivedType(tag: DW_TAG_member, name: "__vtable", scope: !2, file: !2, baseType: !7, size: 64, align: 64, flags: DIFlagPublic)
439-
!7 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__VOID_POINTER", baseType: !8, size: 64, align: 64, dwarfAddressSpace: 1)
439+
!7 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__fb___vtable", baseType: !8, size: 64, align: 64, dwarfAddressSpace: 1)
440440
!8 = !DIBasicType(name: "__VOID", encoding: DW_ATE_unsigned, flags: DIFlagPublic)
441441
!9 = !{i32 2, !"Dwarf Version", i32 5}
442442
!10 = !{i32 2, !"Debug Info Version", i32 3}

src/codegen/tests/debug_tests/snapshots/rusty__codegen__tests__debug_tests__expression_debugging__implementation_added_as_subroutine.snap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ attributes #0 = { nofree nosync nounwind readnone speculatable willreturn }
5656
!8 = !DICompositeType(tag: DW_TAG_structure_type, name: "myFb", scope: !2, file: !2, line: 6, size: 64, align: 64, flags: DIFlagPublic, elements: !9, identifier: "myFb")
5757
!9 = !{!10}
5858
!10 = !DIDerivedType(tag: DW_TAG_member, name: "__vtable", scope: !2, file: !2, baseType: !11, size: 64, align: 64, flags: DIFlagPublic)
59-
!11 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__VOID_POINTER", baseType: !12, size: 64, align: 64, dwarfAddressSpace: 1)
59+
!11 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__myFb___vtable", baseType: !12, size: 64, align: 64, dwarfAddressSpace: 1)
6060
!12 = !DIBasicType(name: "__VOID", encoding: DW_ATE_unsigned, flags: DIFlagPublic)
6161
!13 = !{i32 2, !"Dwarf Version", i32 5}
6262
!14 = !{i32 2, !"Debug Info Version", i32 3}

src/codegen/tests/debug_tests/snapshots/rusty__codegen__tests__debug_tests__expression_debugging__non_function_pous_have_struct_as_param.snap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ attributes #0 = { nofree nosync nounwind readnone speculatable willreturn }
5757
!10 = !DICompositeType(tag: DW_TAG_structure_type, name: "fb", scope: !2, file: !2, line: 9, size: 128, align: 64, flags: DIFlagPublic, elements: !11, identifier: "fb")
5858
!11 = !{!12, !15}
5959
!12 = !DIDerivedType(tag: DW_TAG_member, name: "__vtable", scope: !2, file: !2, baseType: !13, size: 64, align: 64, flags: DIFlagPublic)
60-
!13 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__VOID_POINTER", baseType: !14, size: 64, align: 64, dwarfAddressSpace: 1)
60+
!13 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__fb___vtable", baseType: !14, size: 64, align: 64, dwarfAddressSpace: 1)
6161
!14 = !DIBasicType(name: "__VOID", encoding: DW_ATE_unsigned, flags: DIFlagPublic)
6262
!15 = !DIDerivedType(tag: DW_TAG_member, name: "x", scope: !2, file: !2, line: 11, baseType: !6, size: 32, align: 32, offset: 64, flags: DIFlagPublic)
6363
!16 = !{i32 2, !"Dwarf Version", i32 5}

src/codegen/tests/debug_tests/snapshots/rusty__codegen__tests__debug_tests__expression_debugging__var_and_vartemp_variables_in_pous_added_as_local.snap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ attributes #0 = { nofree nosync nounwind readnone speculatable willreturn }
8383
!8 = !DICompositeType(tag: DW_TAG_structure_type, name: "myFb", scope: !2, file: !2, line: 8, size: 64, align: 64, flags: DIFlagPublic, elements: !9, identifier: "myFb")
8484
!9 = !{!10}
8585
!10 = !DIDerivedType(tag: DW_TAG_member, name: "__vtable", scope: !2, file: !2, baseType: !11, size: 64, align: 64, flags: DIFlagPublic)
86-
!11 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__VOID_POINTER", baseType: !12, size: 64, align: 64, dwarfAddressSpace: 1)
86+
!11 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "__myFb___vtable", baseType: !12, size: 64, align: 64, dwarfAddressSpace: 1)
8787
!12 = !DIBasicType(name: "__VOID", encoding: DW_ATE_unsigned, flags: DIFlagPublic)
8888
!13 = !{i32 2, !"Dwarf Version", i32 5}
8989
!14 = !{i32 2, !"Debug Info Version", i32 3}

0 commit comments

Comments
 (0)