Skip to content
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

Sync to internal development branch of October 2022 #34

Merged
merged 64 commits into from
Oct 3, 2022
Merged

Commits on Dec 26, 2020

  1. Added build time statistics for different regions (saved to time_stat…

    …s.txt if logging is enabled)
    WheretIB committed Dec 26, 2020
    Configuration menu
    Copy the full SHA
    ad52d4f View commit details
    Browse the repository at this point in the history
  2. Fixed sorting of large arrays in std.algorithm

    Instead of swapping pointers in an array of pointers, content of the pointer was swapped instead
    WheretIB committed Dec 26, 2020
    Configuration menu
    Copy the full SHA
    44fbdd5 View commit details
    Browse the repository at this point in the history
  3. Use separate allocator objects for each module to reduce memory requi…

    …rements of full build
    WheretIB committed Dec 26, 2020
    Configuration menu
    Copy the full SHA
    65c5485 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    caf842a View commit details
    Browse the repository at this point in the history
  5. Fixed compiler-only library build

    Timing functions are required by compiler time statistics, but without execution environment they will return 0
    WheretIB committed Dec 26, 2020
    Configuration menu
    Copy the full SHA
    3225d35 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    57339f0 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    365bcb1 View commit details
    Browse the repository at this point in the history
  8. New entity lookup scheme, there is no single global entity map, each …

    …scope can have its own lookup table
    
    Restoring an old scope now just changes the scope pointer and records a lookup location to hide entities defined after that points.
    'unrestricted' scope flag allows new scopes in generic instantiation to lookup variables without location filtering (location filter points to the beginning of the function/type definition and we will to lookup variables defined after that)
    Shadowing arrays are no longer required.
    Entities defined in type and namespace scope are visible through top-level scope instead of a nested scope (so functions of local types still require a clean-up like before)
    
    Small behavior change, entities in scopes in top-level space behave like local scopes.
    Top-level scope is removed without lookup table clean-up.
    Generic instantiation overhead has been lowered to almost nothing.
    WheretIB committed Dec 26, 2020
    Configuration menu
    Copy the full SHA
    673e23f View commit details
    Browse the repository at this point in the history

Commits on Dec 27, 2020

  1. Default arguments from function prototype are available after functio…

    …n is defined without default arguments
    
    Default arguments cannot be changed/repeated
    WheretIB committed Dec 27, 2020
    Configuration menu
    Copy the full SHA
    35f62ed View commit details
    Browse the repository at this point in the history
  2. Optimized virtual function call lookup

    Class types will store a map of all their methods, now we can lookup only specific functions and traverse the base classes directly
    WheretIB committed Dec 27, 2020
    Configuration menu
    Copy the full SHA
    5dd5085 View commit details
    Browse the repository at this point in the history
  3. Optimized type import

    Do not check type map for types that are never placed there
    Load type name only for class types (other types will generate type name)
    Clear array with a memset
    WheretIB committed Dec 27, 2020
    Configuration menu
    Copy the full SHA
    0671913 View commit details
    Browse the repository at this point in the history
  4. Reduced base type class size

    WheretIB committed Dec 27, 2020
    Configuration menu
    Copy the full SHA
    0a05169 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    722f9dc View commit details
    Browse the repository at this point in the history
  6. Additional trace markers

    WheretIB committed Dec 27, 2020
    Configuration menu
    Copy the full SHA
    e01bcb1 View commit details
    Browse the repository at this point in the history

Commits on Dec 30, 2020

  1. Create base and secondary type entries in the module import table onl…

    …y when those are referenced
    WheretIB committed Dec 30, 2020
    Configuration menu
    Copy the full SHA
    8719be2 View commit details
    Browse the repository at this point in the history

Commits on Dec 31, 2020

  1. Configuration menu
    Copy the full SHA
    bfd885f View commit details
    Browse the repository at this point in the history
  2. Optimize overloaded operator lookup by remembering which lookups fail…

    …ed previously
    
    Stopped invalidating the lookup map for assignment on function removal since they are not precise and wont create false lookup results
    WheretIB committed Dec 31, 2020
    Configuration menu
    Copy the full SHA
    e927e79 View commit details
    Browse the repository at this point in the history

Commits on Jan 1, 2021

  1. Configuration menu
    Copy the full SHA
    e378571 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3ebfa14 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9940539 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    675dff4 View commit details
    Browse the repository at this point in the history
  5. Removed unused class

    WheretIB committed Jan 1, 2021
    Configuration menu
    Copy the full SHA
    79154e1 View commit details
    Browse the repository at this point in the history

Commits on Jan 9, 2021

  1. Additional trace markers

    WheretIB committed Jan 9, 2021
    Configuration menu
    Copy the full SHA
    05eebdb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4ec1afa View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    59e9e62 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    fd14c40 View commit details
    Browse the repository at this point in the history
  5. Additional trace markers

    WheretIB committed Jan 9, 2021
    Configuration menu
    Copy the full SHA
    2ab0eb7 View commit details
    Browse the repository at this point in the history
  6. Removed test assertions

    WheretIB committed Jan 9, 2021
    Configuration menu
    Copy the full SHA
    9b4eaca View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    66484ee View commit details
    Browse the repository at this point in the history

Commits on Jan 17, 2021

  1. Added strlen and strcpy to std.string for work with null-terminated c…

    …haracter arrays
    
    Fixed unsafe operations in low-level string functions
    WheretIB committed Jan 17, 2021
    Configuration menu
    Copy the full SHA
    b45ad89 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b760335 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f1c1a5b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5aab051 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    746794a View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    c1e52ba View commit details
    Browse the repository at this point in the history

Commits on Jan 19, 2021

  1. Configuration menu
    Copy the full SHA
    9be6b13 View commit details
    Browse the repository at this point in the history

Commits on Jan 23, 2021

  1. Block containing a single jump cannot be removed if it's used by a ph…

    …i instruction
    
    Phi might merge different values based on incoming branch and if both branches are empty, they are still required for a future register copy to store final value
    WheretIB committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    5b0dbfb View commit details
    Browse the repository at this point in the history
  2. Fixed return type mismatch

    WheretIB committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    e913134 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    dc5707f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    7e9be66 View commit details
    Browse the repository at this point in the history

Commits on Jan 25, 2021

  1. Configuration menu
    Copy the full SHA
    96e84b7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    da77b29 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1806fbd View commit details
    Browse the repository at this point in the history

Commits on Mar 28, 2021

  1. Configuration menu
    Copy the full SHA
    d4f2af6 View commit details
    Browse the repository at this point in the history

Commits on May 2, 2021

  1. Configuration menu
    Copy the full SHA
    55f59de View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1215dc0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2b46e33 View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2021

  1. Removed external function auto-bind option

    'nullcSetMissingFunctionLookup' is provided as a replacement.
    libdl is no longer required.
    WheretIB committed Jun 12, 2021
    Configuration menu
    Copy the full SHA
    74ce987 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1a55919 View commit details
    Browse the repository at this point in the history

Commits on Jun 14, 2021

  1. Configuration menu
    Copy the full SHA
    fad32ea View commit details
    Browse the repository at this point in the history

Commits on Dec 20, 2021

  1. Configuration menu
    Copy the full SHA
    5428768 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7d664fd View commit details
    Browse the repository at this point in the history
  3. When types are displayed in output files, type name of the assignment…

    … target is displayed as well
    WheretIB committed Dec 20, 2021
    Configuration menu
    Copy the full SHA
    f52ce36 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2365a42 View commit details
    Browse the repository at this point in the history
  5. When an optimization is tested, compare instruction delta

    Also output total instruction count at the end of a test run.
    WheretIB committed Dec 20, 2021
    Configuration menu
    Copy the full SHA
    b5f68e2 View commit details
    Browse the repository at this point in the history
  6. Output files for optimization difference only if there we changes in …

    …the optimizations applied
    WheretIB committed Dec 20, 2021
    Configuration menu
    Copy the full SHA
    410a243 View commit details
    Browse the repository at this point in the history
  7. Global alloca temporaries can be removed by load-store propagation ev…

    …en when they are in global scope
    WheretIB committed Dec 20, 2021
    Configuration menu
    Copy the full SHA
    485241a View commit details
    Browse the repository at this point in the history

Commits on Jan 8, 2022

  1. Update std.io to throw an error when Input fails to read an int

    Also add protections against null pointers.
    WheretIB committed Jan 8, 2022
    Configuration menu
    Copy the full SHA
    f09e526 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c9f3410 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ddb9d31 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a310a98 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2ca58a9 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1182127 View commit details
    Browse the repository at this point in the history

Commits on Oct 3, 2022

  1. Improved precision of double number literals

    Co-authored-by: mingodad <[email protected]>
    WheretIB and mingodad committed Oct 3, 2022
    Configuration menu
    Copy the full SHA
    9047ce4 View commit details
    Browse the repository at this point in the history