Commit Graph

9 Commits

Author SHA1 Message Date
Arnold Schwaighofer
fc766a39d3 Fix some more tests 2023-06-29 16:16:56 -07:00
Arnold Schwaighofer
d1d7438a70 Move windows tests to %use_no_opaque_pointers usage 2023-06-14 10:49:50 -07:00
Ben Barham
65232c8117 [rebranch][test] Quote assembly generated for Windows 2021-12-15 13:13:22 +10:00
Saleem Abdulrasool
d7f9e04dbc test: address portability concerns for Windows
Update the IRGen tests for Windows IRGen.  This is an improvement over
what we have currently, but is not sufficient to get all the IRGen tests
passing yet.
2019-01-15 11:03:37 -08:00
Saleem Abdulrasool
3974756f91 test: repair the COFF autolink test
When the autolinking mechanism was changed, this test was not updated.
Update the test for the involved changes.
2018-04-23 20:20:32 -07:00
Saleem Abdulrasool
1025eed645 IRGen: make the autolink work better in COFF environments
This was obscured due to local workarounds.  Because the reference is
cross-module, and the symbol itself will be rebased, it cannot serve as
a constant initializer (the value is not known until runtime).  However,
using a function pointer is permissible.  The linker will materialize a
thunk for the function itself and cause the module to be force linked.
This also works on ELF and MachO as well.  The overhead associated with
this is pretty minimal as the function itself has an empty body, and
flags will differentiate between a function and data symbol.  The slight
penalty in size (on the order of 2-4 bytes) allows for the same pattern
to be used across all the targets.
2018-02-10 18:02:50 -08:00
Dmitri Gribenko
984210aa53 tests: replace '// RUN: rm -rf' '// RUN: mkdir' pairs with '%empty-directory(...)'
These changes were made using a script.
2017-06-04 11:08:39 -07:00
Dmitri Gribenko
d175b3b66d Migrate FileCheck to %FileCheck in tests 2016-08-10 23:52:02 -07:00
Saleem Abdulrasool
eeebf0cbe3 IRGen: give the force load symbol export DLL storage
The force load symbol was not marked as DLL export.  This would result in the
symbol not being emitted into the import library and consequently not being
available to the consumer.  This ensures that the symbol is visible outside of
the module.
2016-07-14 09:35:30 -07:00