-
Notifications
You must be signed in to change notification settings - Fork 160
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add slangc flag to -zero-initialize
all variables
#3987
Add slangc flag to -zero-initialize
all variables
#3987
Commits on Apr 19, 2024
-
Default (zero'd) values with
-zero-initialize
flagAdds `-zero-initialize` flag to set values to a __default() expression if they are missing a initExpr.
Configuration menu - View commit details
-
Copy full SHA for ee02d85 - Browse repository at this point
Copy the full SHA ee02d85View commit details -
Merge branch 'master' of https://github.com/ArielG-NV/slang into opti…
…on-to-zero-initialize-all-variables
Configuration menu - View commit details
-
Copy full SHA for 6cba6a5 - Browse repository at this point
Copy the full SHA 6cba6a5View commit details
Commits on Apr 21, 2024
-
address review and ensure __default calls ctor + zero's fields.
1. We must keep zero-initialize in SemanticsDeclHeaderVisitor. This is done because else a ctor will be initialized before we can set struct fields to `__default`. 2. IRDefaultCtorDecoration was added to track default ctor's with parent struct. 3. ParentAggTypeModifier was added to track ChildOfStruct->IRType for sharing data such as with functions. This is required to ensure we associate a lowered function with a lowered struct type
Configuration menu - View commit details
-
Copy full SHA for e8d161a - Browse repository at this point
Copy the full SHA e8d161aView commit details -
Merge branch 'master' of https://github.com/ArielG-NV/slang into opti…
…on-to-zero-initialize-all-variables
Configuration menu - View commit details
-
Copy full SHA for 2ac4760 - Browse repository at this point
Copy the full SHA 2ac4760View commit details -
Removed decoration to track defaultCtor in favor of field.
This was done since decorations are checked for IR objects, storing auxillary info does not work here as a result if usable object.
Configuration menu - View commit details
-
Copy full SHA for d8e28a4 - Browse repository at this point
Copy the full SHA d8e28a4View commit details -
Configuration menu - View commit details
-
Copy full SHA for dda55ff - Browse repository at this point
Copy the full SHA dda55ffView commit details -
Merge branch 'option-to-zero-initialize-all-variables' of https://git…
…hub.com/ArielG-NV/slang into option-to-zero-initialize-all-variables
Configuration menu - View commit details
-
Copy full SHA for 65f3b23 - Browse repository at this point
Copy the full SHA 65f3b23View commit details
Commits on Apr 22, 2024
-
Since `IDefaultInitializable` is taking a considerabley larger amount of time than anticipated I am pushing some of the other fixes requested. I did not remove the "IRStruct storing a default Ctor" hack yet. mostly renamed/adjusted tests to work as intended added test to ensure we don't synthisize a junk `= 0` when not in `zero initialize` mode removed member in favor of sharedContext+dictionary.
Configuration menu - View commit details
-
Copy full SHA for cbc26a6 - Browse repository at this point
Copy the full SHA cbc26a6View commit details
Commits on Apr 26, 2024
-
Merge branch 'master' of https://github.com/ArielG-NV/slang into opti…
…on-to-zero-initialize-all-variables
Configuration menu - View commit details
-
Copy full SHA for 7eed93e - Browse repository at this point
Copy the full SHA 7eed93eView commit details
Commits on Apr 28, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 481a3f9 - Browse repository at this point
Copy the full SHA 481a3f9View commit details -
default init without any IR hacks (fully working aside from generic/c…
…ontainored-types)
Configuration menu - View commit details
-
Copy full SHA for 788d838 - Browse repository at this point
Copy the full SHA 788d838View commit details
Commits on Apr 29, 2024
-
1. IDefaultInitializer interface was added. If conforming, your type may be zero-initialized. To Conform a `__init()` is required 2. `[OnlyAutoInitIfForced]` was added. This attribute states that a default initializer should only be implicitly called if forced by the compiler (`zero-initialize` for example). This allows types which implicitly/explicitly conform to IDefaultInitialize to have optional auto-init behavior (which is Slang's default for user structs) to be disabled. * note about `[OnlyAutoInitIfForced]`. This is required for std-lib to not automatically resolve init-expressions for std-lib, but it has the added benifit of allowing user made structs/classes to control the default behavior of initializing
Configuration menu - View commit details
-
Copy full SHA for 8a0efcc - Browse repository at this point
Copy the full SHA 8a0efccView commit details -
Configuration menu - View commit details
-
Copy full SHA for d9ab0a8 - Browse repository at this point
Copy the full SHA d9ab0a8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6ac2b36 - Browse repository at this point
Copy the full SHA 6ac2b36View commit details -
Merge branch 'master' of https://github.com/ArielG-NV/slang into opti…
…on-to-zero-initialize-all-variables
Configuration menu - View commit details
-
Copy full SHA for cd9161e - Browse repository at this point
Copy the full SHA cd9161eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6a0a8e6 - Browse repository at this point
Copy the full SHA 6a0a8e6View commit details
Commits on Apr 30, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 40ead4f - Browse repository at this point
Copy the full SHA 40ead4fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1453fff - Browse repository at this point
Copy the full SHA 1453fffView commit details -
fix field-init expressions with structs initializers
don't init a static in a ctor. This would be illegal code and wrong code (init list in lower-to-ir)
Configuration menu - View commit details
-
Copy full SHA for a0dfa9e - Browse repository at this point
Copy the full SHA a0dfa9eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9110af7 - Browse repository at this point
Copy the full SHA 9110af7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 909ce56 - Browse repository at this point
Copy the full SHA 909ce56View commit details -
Merge branch 'option-to-zero-initialize-all-variables' of https://git…
…hub.com/ArielG-NV/slang into option-to-zero-initialize-all-variables
Configuration menu - View commit details
-
Copy full SHA for e97b7c1 - Browse repository at this point
Copy the full SHA e97b7c1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8e38e95 - Browse repository at this point
Copy the full SHA 8e38e95View commit details -
Configuration menu - View commit details
-
Copy full SHA for f337f90 - Browse repository at this point
Copy the full SHA f337f90View commit details
Commits on May 16, 2024
-
Configuration menu - View commit details
-
Copy full SHA for b1cb7bd - Browse repository at this point
Copy the full SHA b1cb7bdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1ff34fb - Browse repository at this point
Copy the full SHA 1ff34fbView commit details -
Merge branch 'option-to-zero-initialize-all-variables' of https://git…
…hub.com/ArielG-NV/slang into option-to-zero-initialize-all-variables
Configuration menu - View commit details
-
Copy full SHA for a09a5ec - Browse repository at this point
Copy the full SHA a09a5ecView commit details -
Configuration menu - View commit details
-
Copy full SHA for d6fbb87 - Browse repository at this point
Copy the full SHA d6fbb87View commit details -
should be checking if a valid type is `Type`, not `BasicExpressionType`
Configuration menu - View commit details
-
Copy full SHA for b93f236 - Browse repository at this point
Copy the full SHA b93f236View commit details -
Configuration menu - View commit details
-
Copy full SHA for bf4cb40 - Browse repository at this point
Copy the full SHA bf4cb40View commit details -
Configuration menu - View commit details
-
Copy full SHA for afef320 - Browse repository at this point
Copy the full SHA afef320View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1199dcc - Browse repository at this point
Copy the full SHA 1199dccView commit details -
Configuration menu - View commit details
-
Copy full SHA for cbc526f - Browse repository at this point
Copy the full SHA cbc526fView commit details -
Configuration menu - View commit details
-
Copy full SHA for f58a7bf - Browse repository at this point
Copy the full SHA f58a7bfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 69f686a - Browse repository at this point
Copy the full SHA 69f686aView commit details
Commits on May 17, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 4ec3988 - Browse repository at this point
Copy the full SHA 4ec3988View commit details -
added extension support, remove redundant code
Did not address all review comments yet, want to see if CI also passes my changes
Configuration menu - View commit details
-
Copy full SHA for 126abbd - Browse repository at this point
Copy the full SHA 126abbdView commit details
Commits on May 18, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 8f9286d - Browse repository at this point
Copy the full SHA 8f9286dView commit details -
change logic + DefaultConstructExpr
setup code to use defaultConstructExpr when possible to construct a default without overhead of invoke/related also changed code so parent's defaultInitializable propegates to derived member
Configuration menu - View commit details
-
Copy full SHA for 94651a0 - Browse repository at this point
Copy the full SHA 94651a0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 479c8cd - Browse repository at this point
Copy the full SHA 479c8cdView commit details -
1. fix error in
isSubtype
2. add flag to isSubtype`subtypeInheritanceIsNotFullyResolved` was added since we may not be done the lookup stage but still require `isSubtype` checking to verify usage of inheritance while working with inheritance. In This case we will just skip `ensureLookup` and "caching" (since we don't have a cache invalidation system, nor need)
Configuration menu - View commit details
-
Copy full SHA for b776ec5 - Browse repository at this point
Copy the full SHA b776ec5View commit details -
Merge branch 'option-to-zero-initialize-all-variables' of https://git…
…hub.com/ArielG-NV/slang into option-to-zero-initialize-all-variables
Configuration menu - View commit details
-
Copy full SHA for 6425cc3 - Browse repository at this point
Copy the full SHA 6425cc3View commit details
Commits on May 21, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 40f742c - Browse repository at this point
Copy the full SHA 40f742cView commit details -
Configuration menu - View commit details
-
Copy full SHA for c0b391b - Browse repository at this point
Copy the full SHA c0b391bView commit details
Commits on May 22, 2024
-
Configuration menu - View commit details
-
Copy full SHA for f6729e0 - Browse repository at this point
Copy the full SHA f6729e0View commit details -
Merge branch 'option-to-zero-initialize-all-variables' of https://git…
…hub.com/ArielG-NV/slang into option-to-zero-initialize-all-variables
Configuration menu - View commit details
-
Copy full SHA for 576cdb3 - Browse repository at this point
Copy the full SHA 576cdb3View commit details
Commits on May 23, 2024
-
I checked on the CI and realized I caused a failure, mistake was made not negating some code
Configuration menu - View commit details
-
Copy full SHA for ce9593a - Browse repository at this point
Copy the full SHA ce9593aView commit details -
Configuration menu - View commit details
-
Copy full SHA for f6e44d9 - Browse repository at this point
Copy the full SHA f6e44d9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 918ebf8 - Browse repository at this point
Copy the full SHA 918ebf8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1dda8ff - Browse repository at this point
Copy the full SHA 1dda8ffView commit details -
Configuration menu - View commit details
-
Copy full SHA for d8adeb2 - Browse repository at this point
Copy the full SHA d8adeb2View commit details -
Merge branch 'option-to-zero-initialize-all-variables' of https://git…
…hub.com/ArielG-NV/slang into option-to-zero-initialize-all-variables
Configuration menu - View commit details
-
Copy full SHA for e40237a - Browse repository at this point
Copy the full SHA e40237aView commit details
Commits on May 24, 2024
-
remove redundant code + fix defaultConstruct emitting
previously defaultConstruct emitting was crashing due to having generics unresolved. By not resolving the default construct immediately, everything works.
Configuration menu - View commit details
-
Copy full SHA for 35eeeb9 - Browse repository at this point
Copy the full SHA 35eeeb9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4fcf274 - Browse repository at this point
Copy the full SHA 4fcf274View commit details -
Configuration menu - View commit details
-
Copy full SHA for b2dc0cd - Browse repository at this point
Copy the full SHA b2dc0cdView commit details -
Configuration menu - View commit details
-
Copy full SHA for e110a8b - Browse repository at this point
Copy the full SHA e110a8bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 922d301 - Browse repository at this point
Copy the full SHA 922d301View commit details -
Merge branch 'option-to-zero-initialize-all-variables' of https://git…
…hub.com/ArielG-NV/slang into option-to-zero-initialize-all-variables
Configuration menu - View commit details
-
Copy full SHA for 40e0a0e - Browse repository at this point
Copy the full SHA 40e0a0eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8404332 - Browse repository at this point
Copy the full SHA 8404332View commit details
Commits on Jun 11, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 7f53eb3 - Browse repository at this point
Copy the full SHA 7f53eb3View commit details -
Configuration menu - View commit details
-
Copy full SHA for d5288a6 - Browse repository at this point
Copy the full SHA d5288a6View commit details -
Configuration menu - View commit details
-
Copy full SHA for b7e5375 - Browse repository at this point
Copy the full SHA b7e5375View commit details -
Configuration menu - View commit details
-
Copy full SHA for a41cad5 - Browse repository at this point
Copy the full SHA a41cad5View commit details
Commits on Jun 12, 2024
-
address review and add -zero-initialize test
`-zero-initialize` test was added to be sure debug pointers are not broken with default init values
Configuration menu - View commit details
-
Copy full SHA for 095fa8a - Browse repository at this point
Copy the full SHA 095fa8aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1cf893e - Browse repository at this point
Copy the full SHA 1cf893eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9966baf - Browse repository at this point
Copy the full SHA 9966bafView commit details -
Configuration menu - View commit details
-
Copy full SHA for 210805f - Browse repository at this point
Copy the full SHA 210805fView commit details