| ... | @@ -656,10 +656,17 @@ pub fn addTestsForTarget(db: *Debugger, target: Target) void { | ... | @@ -656,10 +656,17 @@ pub fn addTestsForTarget(db: *Debugger, target: Target) void { |
| 656 | .{ | 656 | .{ |
| 657 | .path = "storage.zig", | 657 | .path = "storage.zig", |
| 658 | .source = | 658 | .source = |
| | 659 | \\comptime { |
| | 660 | \\ _ = @import("externs.zig"); |
| | 661 | \\} |
| 659 | \\const global_const: u64 = 0x19e50dc8d6002077; | 662 | \\const global_const: u64 = 0x19e50dc8d6002077; |
| 660 | \\var global_var: u64 = 0xcc423cec08622e32; | 663 | \\var global_var: u64 = 0xcc423cec08622e32; |
| 661 | \\threadlocal var global_threadlocal1: u64 = 0xb4d643528c042121; | 664 | \\threadlocal var global_threadlocal1: u64 = 0xb4d643528c042121; |
| 662 | \\threadlocal var global_threadlocal2: u64 = 0x43faea1cf5ad7a22; | 665 | \\threadlocal var global_threadlocal2: u64 = 0x43faea1cf5ad7a22; |
| | 666 | \\extern const extern_const: u64; |
| | 667 | \\extern var extern_var: u64; |
| | 668 | \\extern threadlocal var extern_threadlocal1: u64; |
| | 669 | \\extern threadlocal var extern_threadlocal2: u64; |
| 663 | \\fn testStorage( | 670 | \\fn testStorage( |
| 664 | \\ param1: u64, | 671 | \\ param1: u64, |
| 665 | \\ param2: u64, | 672 | \\ param2: u64, |
| ... | @@ -673,6 +680,7 @@ pub fn addTestsForTarget(db: *Debugger, target: Target) void { | ... | @@ -673,6 +680,7 @@ pub fn addTestsForTarget(db: *Debugger, target: Target) void { |
| 673 | \\ const local_comptime_val: u64 = global_const *% global_const; | 680 | \\ const local_comptime_val: u64 = global_const *% global_const; |
| 674 | \\ const local_comptime_ptr: struct { u64 } = .{ local_comptime_val *% local_comptime_val }; | 681 | \\ const local_comptime_ptr: struct { u64 } = .{ local_comptime_val *% local_comptime_val }; |
| 675 | \\ const local_const: u64 = global_var ^ global_threadlocal1 ^ global_threadlocal2 ^ | 682 | \\ const local_const: u64 = global_var ^ global_threadlocal1 ^ global_threadlocal2 ^ |
| | 683 | \\ extern_const ^ extern_var ^ extern_threadlocal1 ^ extern_threadlocal2 ^ |
| 676 | \\ param1 ^ param2 ^ param3 ^ param4 ^ param5 ^ param6 ^ param7 ^ param8; | 684 | \\ param1 ^ param2 ^ param3 ^ param4 ^ param5 ^ param6 ^ param7 ^ param8; |
| 677 | \\ var local_var: u64 = local_comptime_ptr[0] ^ local_const; | 685 | \\ var local_var: u64 = local_comptime_ptr[0] ^ local_const; |
| 678 | \\ local_var = local_var; | 686 | \\ local_var = local_var; |
| ... | @@ -692,19 +700,37 @@ pub fn addTestsForTarget(db: *Debugger, target: Target) void { | ... | @@ -692,19 +700,37 @@ pub fn addTestsForTarget(db: *Debugger, target: Target) void { |
| 692 | \\ | 700 | \\ |
| 693 | , | 701 | , |
| 694 | }, | 702 | }, |
| | 703 | .{ |
| | 704 | .path = "externs.zig", |
| | 705 | .source = |
| | 706 | \\export const extern_const: u64 = 0x1b0c91ea0470b0b2; |
| | 707 | \\export var extern_var: u64 = 0x19bc17b3f0b61ebc; |
| | 708 | \\export threadlocal var extern_threadlocal1: u64 = 0x3034c4ce967ed64d; |
| | 709 | \\export threadlocal var extern_threadlocal2: u64 = 0xfd330ab00b4bc5eb; |
| | 710 | \\ |
| | 711 | , |
| | 712 | }, |
| 695 | }, | 713 | }, |
| 696 | \\breakpoint set --file storage.zig --source-pattern-regexp 'local_var = local_var;' | 714 | \\breakpoint set --file storage.zig --source-pattern-regexp 'local_var = local_var;' |
| 697 | \\process launch | 715 | \\process launch |
| 698 | \\target variable --show-types --format hex -- global_const global_var global_threadlocal1 global_threadlocal2 | 716 | \\target variable --show-types --format hex -- global_const global_var global_threadlocal1 global_threadlocal2 extern_const extern_var extern_threadlocal1 extern_threadlocal2 |
| 699 | \\frame variable --show-types --format hex -- param1 param2 param3 param4 param5 param6 param7 param8 local_comptime_val local_comptime_ptr.0 local_const local_var | 717 | \\frame variable --show-types --format hex -- param1 param2 param3 param4 param5 param6 param7 param8 local_comptime_val local_comptime_ptr.0 local_const local_var |
| 700 | \\breakpoint delete --force 1 | 718 | \\breakpoint delete --force 1 |
| 701 | , | 719 | , |
| 702 | &.{ | 720 | &.{ |
| 703 | \\(lldb) target variable --show-types --format hex -- global_const global_var global_threadlocal1 global_threadlocal2 | 721 | \\(lldb) target variable --show-types --format hex -- global_const global_var global_threadlocal1 global_threadlocal2 extern_const extern_var extern_threadlocal1 extern_threadlocal2 |
| 704 | \\(u64) global_const = 0x19e50dc8d6002077 | 722 | \\(u64) global_const = 0x19e50dc8d6002077 |
| 705 | \\(u64) global_var = 0xcc423cec08622e32 | 723 | \\(u64) global_var = 0xcc423cec08622e32 |
| 706 | \\(u64) global_threadlocal1 = 0xb4d643528c042121 | 724 | \\(u64) global_threadlocal1 = 0xb4d643528c042121 |
| 707 | \\(u64) global_threadlocal2 = 0x43faea1cf5ad7a22 | 725 | \\(u64) global_threadlocal2 = 0x43faea1cf5ad7a22 |
| | 726 | \\(u64) extern_const = 0x1b0c91ea0470b0b2 |
| | 727 | \\(u64) extern_const = 0x1b0c91ea0470b0b2 |
| | 728 | \\(u64) extern_var = 0x19bc17b3f0b61ebc |
| | 729 | \\(u64) extern_var = 0x19bc17b3f0b61ebc |
| | 730 | \\(u64) extern_threadlocal1 = 0x3034c4ce967ed64d |
| | 731 | \\(u64) extern_threadlocal1 = 0x3034c4ce967ed64d |
| | 732 | \\(u64) extern_threadlocal2 = 0xfd330ab00b4bc5eb |
| | 733 | \\(u64) extern_threadlocal2 = 0xfd330ab00b4bc5eb |
| 708 | \\(lldb) frame variable --show-types --format hex -- param1 param2 param3 param4 param5 param6 param7 param8 local_comptime_val local_comptime_ptr.0 local_const local_var | 734 | \\(lldb) frame variable --show-types --format hex -- param1 param2 param3 param4 param5 param6 param7 param8 local_comptime_val local_comptime_ptr.0 local_const local_var |
| 709 | \\(u64) param1 = 0x6a607e08125c7e00 | 735 | \\(u64) param1 = 0x6a607e08125c7e00 |
| 710 | \\(u64) param2 = 0x98944cb2a45a8b51 | 736 | \\(u64) param2 = 0x98944cb2a45a8b51 |
| ... | @@ -716,8 +742,8 @@ pub fn addTestsForTarget(db: *Debugger, target: Target) void { | ... | @@ -716,8 +742,8 @@ pub fn addTestsForTarget(db: *Debugger, target: Target) void { |
| 716 | \\(u64) param8 = 0xc88533722601e481 | 742 | \\(u64) param8 = 0xc88533722601e481 |
| 717 | \\(u64) local_comptime_val = 0x69490636f81df751 | 743 | \\(u64) local_comptime_val = 0x69490636f81df751 |
| 718 | \\(u64) local_comptime_ptr.0 = 0x82e834dae74767a1 | 744 | \\(u64) local_comptime_ptr.0 = 0x82e834dae74767a1 |
| 719 | \\(u64) local_const = 0xdffceb8b2f41e205 | 745 | \\(u64) local_const = 0x104ba3ac46b25fad |
| 720 | \\(u64) local_var = 0x5d14df51c80685a4 | 746 | \\(u64) local_var = 0x92a39776a1f5380c |
| 721 | \\(lldb) breakpoint delete --force 1 | 747 | \\(lldb) breakpoint delete --force 1 |
| 722 | \\1 breakpoints deleted; 0 breakpoint locations disabled. | 748 | \\1 breakpoints deleted; 0 breakpoint locations disabled. |
| 723 | }, | 749 | }, |