Stephen Toub [Thu, 18 Aug 2016 18:06:39 +0000 (14:06 -0400)]
Fix serialization of delegates without targets
A null check is missing when FEATURE_REMOTING is not defined, resulting in an invalid cast exception when deserializing a delegate without a target (e.g. a delegate for a static method).
Stephen Toub [Thu, 18 Aug 2016 18:05:35 +0000 (14:05 -0400)]
Fix serialization of several exception types
VerificationException's deserialization ctor was being tree-shaken away.
SecurityException's deserialization ctor was ifdef'd out.
Joseph Tremoulet [Thu, 18 Aug 2016 15:02:56 +0000 (11:02 -0400)]
Merge pull request #6747 from JosephTremoulet/VNLoops
Record expr location for opqaue value numbers
Viacheslav Nikolaev [Thu, 18 Aug 2016 12:12:09 +0000 (15:12 +0300)]
An easy fix for #6760 (#6770)
As mentioned in #6760 we can postpone the calculation of the NeedsTurkishCasing property.
Conflicts:
src/mscorlib/corefx/System/Globalization/TextInfo.Unix.cs
Rahul Kumar [Thu, 18 Aug 2016 02:37:23 +0000 (19:37 -0700)]
Due to comdat folding some fcalls are pointing to same code. This fix ensures that these fcall has a unique code address. (#6776)
Jarret Shook [Wed, 17 Aug 2016 20:05:42 +0000 (13:05 -0700)]
Merge pull request #6773 from jashook/disable_jit32_timeouts_round_two
Disable tests that timeout for jit32
Rahul Kumar [Wed, 17 Aug 2016 18:00:15 +0000 (11:00 -0700)]
Merge pull request #6748 from rahku/arm64ShadowHeap
update GC shadow heap as part of writebarrier jit helper
jashoo [Wed, 17 Aug 2016 17:47:26 +0000 (10:47 -0700)]
Disable tests that timeout for jit32
See issues #6720, #6718, #6714 for more information.
Wes Haggard [Wed, 17 Aug 2016 15:29:26 +0000 (08:29 -0700)]
Merge pull request #6766 from dotnet-bot/UpdateDependencies20160817062015
Updating External dependencies to beta-24417-00
Jonghyun Park [Wed, 17 Aug 2016 06:32:41 +0000 (15:32 +0900)]
Makes FCallMemcpy unwindable (#6753)
FCallMemcpy function in vm/arm/memcpy.S creates an stack frame that
libunwind cannot recognize, which leads to the issue in #6752.
This commit makes the stack frame of FCallMemcpy unwindable to fix
issue #6752.
dotnet-bot [Wed, 17 Aug 2016 06:20:15 +0000 (06:20 +0000)]
Updating External dependencies to beta-24417-00
Hyung-Kyu Choi [Wed, 17 Aug 2016 04:03:30 +0000 (13:03 +0900)]
Apply correct symbolic name _ARM_ instead of _TARGET_ARM_ (#6756)
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Rama krishnan Raghupathy [Wed, 17 Aug 2016 01:44:22 +0000 (18:44 -0700)]
Merge pull request #6749 from ramarag/sos_misc
Arm64 Sos fixes for
Jan Kotas [Wed, 17 Aug 2016 01:33:14 +0000 (18:33 -0700)]
Merge pull request #6763 from dotnet-bot/from-tfs
Merge changes from TFS
Tarek Mahmoud Sayed [Wed, 17 Aug 2016 00:36:06 +0000 (17:36 -0700)]
Merge pull request #6362 from svick/culturedata-regionnames
Move RegionNames out of #ifs
Koundinya Veluri [Tue, 16 Aug 2016 20:14:29 +0000 (13:14 -0700)]
Fix build break from new alignments
- MSVC seems to require alignment specification to be on the declaration as well as the definition
- Ignore warning about padding parent struct due to __declspec(align()), as that is intentional
Original change PR: https://github.com/dotnet/coreclr/pull/6516
[tfs-changeset: 1622589]
Stephen Toub [Tue, 16 Aug 2016 19:42:38 +0000 (15:42 -0400)]
Merge pull request #6761 from stephentoub/mscorlib_deserialization
Add deserialization ctors to mscorlib ref assembly
Fadi Hanna [Tue, 16 Aug 2016 17:58:50 +0000 (10:58 -0700)]
Adding new generics tests (#6709)
Stephen Toub [Tue, 16 Aug 2016 17:14:07 +0000 (13:14 -0400)]
Add deserialization ctors to mscorlib ref assembly
In a previous PR, I'd added these to model.xml, but we're still consuming the mscorlib ref assembly in corefx, so we need these deserialization ctors there, too.
Gaurav Khanna [Tue, 16 Aug 2016 16:56:29 +0000 (09:56 -0700)]
Merge pull request #6743 from dotnet-bot/UpdateDependencies20160815051908
Updating External dependencies to beta-24415-00
Joseph Tremoulet [Sat, 13 Aug 2016 18:17:09 +0000 (14:17 -0400)]
Record expr location for opqaue value numbers
When value numbering sees an expression that is too complex, runs out of
compile-time budget for deep field/phi sequences, etc., it assigns
`VNForExpr()` for the expression whose value number is being computed.
This produces a new, unique, opaque value number that will compare as
equal to itself but not to any other value number.
This change updates value numbering to record the location of the
expression whose value such a value numbers is created to stand in for.
While attaching location information to value numbers in general must be
done with care regarding subtleties of correlating value numbers for
expressions in different locations that compute the same value, those
subtleties are not relevant in the case of these unique/opaque value
numbers, whose point is to stand in for the value of one particular
expression and whose value may be propagated by copies but will never be
computed by other redundant expressions.
Loop-invariant code hoisting is updated to take these locations into
account when determining loop-invariance; the opaque value number is
loop-invariant if the expression whose value it represents is outside the
loop.
The `VNForExpr()` method is updated to take a `BasicBlock*` to identify
the location, but the backing store only records the block's loop number,
since the loop-invariance check is the only consumer of this information
and doing so allows a more compact representation (in particular, we avoid
allocating `m_defs` backing storage for these value numbers, since they are
used for the "give up and be conservative" cases).
The `BasicBlock*` passed to `VNForExpr()` can be `nullptr` to still have
the prior semantics of a fully opaque value number that can't be proved
loop-invariant; this is used for a handful of cases where the budgeting
results are memoized and so expressions at different locations could end
up sharing opaque value numbers, as well as a few cases where the
`VNForExpr()` call is covering a rare corner case in a utility for which
the corresponding `BasicBlock` may not be handy.
Fixes #6303.
Rama Krishnan Raghupathy [Tue, 16 Aug 2016 01:34:24 +0000 (18:34 -0700)]
Arm64 Sos fixes for
!verify heap
!u
!u -gcinfo
Rahul Kumar [Tue, 16 Aug 2016 01:32:59 +0000 (18:32 -0700)]
update GC shadow heap as part of writebarrier jit helper
Stephen Toub [Tue, 16 Aug 2016 00:33:00 +0000 (20:33 -0400)]
Merge pull request #6423 from stephentoub/restore_serialization
Restore most serialization implementations in coreclr
Koundinya Veluri [Mon, 15 Aug 2016 18:52:40 +0000 (11:52 -0700)]
Merge pull request #6516 from benaadams/WorkerThreadStart
WorkerThreadStart volatile read+cmpxchg loop
Atsushi Kanamori [Mon, 15 Aug 2016 17:00:09 +0000 (10:00 -0700)]
Merge pull request #6745 from AtsushiKan/rv
Fix issue https://github.com/dotnet/coreclr/issues/6600
Atsushi Kanamori [Mon, 15 Aug 2016 13:52:29 +0000 (06:52 -0700)]
Fix issue https://github.com/dotnet/coreclr/issues/6600
Return parameters not accomodated in
Attribute.GetParentDefinition(ParameterInfo)
Stephen Toub [Sun, 24 Jul 2016 23:57:33 +0000 (19:57 -0400)]
Add deserialization ctors to model.xml
dotnet-bot [Mon, 15 Aug 2016 05:19:08 +0000 (05:19 +0000)]
Updating External dependencies to beta-24415-00
Stephen Toub [Sat, 23 Jul 2016 17:49:15 +0000 (10:49 -0700)]
Port serialization implementation to Unix globalization types
These will need to be tested. They are a straight port from the Windows implementation, but the implementation has diverged, and it's possible (likely) there are some differences I didn't catch.
Stephen Toub [Sat, 23 Jul 2016 04:53:10 +0000 (21:53 -0700)]
Ensure On* methods are not removed by BclRewriter
Stephen Toub [Sat, 23 Jul 2016 03:26:01 +0000 (20:26 -0700)]
Restore most serialization implementations in coreclr
I audited all uses of FEATURE_SERIALIZATION in coreclr and removed most of the ifdef'ing. The remaining uses of FEATURE_SERIALIZATION are primary related to actually implementing formatters, CAS-related types, and a few types I've left non-serializable (e.g. ExecutionContext) but that we can revisit later if needed.
Jan Kotas [Sun, 14 Aug 2016 06:15:57 +0000 (23:15 -0700)]
Merge pull request #6740 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Kotas [Sun, 14 Aug 2016 01:52:58 +0000 (18:52 -0700)]
Fixup a few contracts
[tfs-changeset: 1622296]
Wes Haggard [Sat, 13 Aug 2016 07:05:33 +0000 (00:05 -0700)]
Merge pull request #6731 from weshaggard/FixSerializationPackageVersion
Update version of S.R.Serialization.Primitives to version 4.1.1
Rahul Kumar [Sat, 13 Aug 2016 06:09:19 +0000 (23:09 -0700)]
Merge pull request #6728 from rahku/typeloaderHang
Issue: If two threads try to load the same type it can cause clr to h…
Rahul Kumar [Sat, 13 Aug 2016 06:08:18 +0000 (23:08 -0700)]
Merge pull request #6726 from rahku/fixes
In intGCShadow() first reserve memory before committing
Wes Haggard [Sat, 13 Aug 2016 04:51:07 +0000 (21:51 -0700)]
Update version of S.R.Serialization.Primitives to version 4.1.1
Pat Gavlin [Sat, 13 Aug 2016 02:11:09 +0000 (19:11 -0700)]
Merge pull request #6729 from pgavlin/Reformat
Re-reformat the JIT sources.
Rahul Kumar [Sat, 13 Aug 2016 00:41:03 +0000 (17:41 -0700)]
review fixes
Rahul Kumar [Sat, 13 Aug 2016 00:29:02 +0000 (17:29 -0700)]
In intGCShadow() first reserve memory before committing. VirtualCommit does not accept NULL as input address
Pat Gavlin [Fri, 12 Aug 2016 23:51:22 +0000 (16:51 -0700)]
Reformat the JIT sources.
The sources were formatted using jit-format on Windows with the
following command lines in the following order:
`jit-format.cmd -o Windows -b Checked -a x64 -f`
`jit-format.cmd -o Windows -b Debug -a x64 -f`
`jit-format.cmd -o Windows -b Release -a x64 -f`
The versions of clang-format and clang-tidy that were invoked by
jit-format were:
clang-format version 3.8.1 (branches/release_38)
LLVM (http://llvm.org/):
LLVM version 3.8.1
Optimized build with assertions.
Built Jun 22 2016 (12:19:56).
Default target: x86_64-pc-windows-msvc
Host CPU: sandybridge
Pat Gavlin [Fri, 12 Aug 2016 23:34:18 +0000 (16:34 -0700)]
Massage the code a bit for jit-format w/ Clang 3.8.
Manually insert a few braces that would otherwise have been inserted
in the wrong place.
Pat Gavlin [Fri, 12 Aug 2016 22:10:30 +0000 (15:10 -0700)]
Revert #6686.
The code was accidentally formatted with Clang 3.9. It will be reformatted
with Clang 3.8 and a new PR submitted.
Rahul Kumar [Fri, 12 Aug 2016 23:47:47 +0000 (16:47 -0700)]
Issue: If two threads try to load the same type it can cause clr to hang if the first thread to start the load happens to be a background thread. Background thread would create PendingTypeLoadEntry and insert it into unresolvedClassHash. Second thread (having normal priority) would block on PendingTypeLoadEntry->m_crst waiting for the background thread to unblock it. After doing partial load of type background thread periodically checks if there are other threads waiting for type to get loaded. In this case it does find a thread waiting so it unblocks thread. However, background thread has not removed PendingTypeLoadEntry from unresolvedClassHash. This causes the second thread to continue spinning and so not allowing background thread to get any processor cycles to remove PendingTypeLoadEntry from unresolvedClassHash. This cause app to be seem like it has hung. It is possible that this may not repro on multi-proc machine where the background thread can get scheduled on another processor when second thread continues to spin on another processor.
Fix: First remove the PendingTypeLoadEntry from unresolvedClassHash and then unblock the waiting threads.
Jarret Shook [Fri, 12 Aug 2016 22:00:47 +0000 (15:00 -0700)]
Merge pull request #6721 from jashook/disable_jit32_tests
Disable tests to get jit32 jobs green
Russ Keldorph [Fri, 12 Aug 2016 21:58:10 +0000 (14:58 -0700)]
Merge pull request #6685 from RussKeldorph/test-native-log
Re-enable creating Tests_Native* log files
Sasha Semennikov [Fri, 12 Aug 2016 21:34:57 +0000 (14:34 -0700)]
Fix exception filter getter for native frames (#6723)
Fadi Hanna [Fri, 12 Aug 2016 19:54:24 +0000 (12:54 -0700)]
Fixing priority on tests (making tests P1) (#6706)
Jan Kotas [Fri, 12 Aug 2016 19:50:37 +0000 (12:50 -0700)]
Merge pull request #6722 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Kotas [Fri, 12 Aug 2016 17:51:58 +0000 (10:51 -0700)]
More fixes for unreachable code warnings with older compiler
[tfs-changeset: 1622213]
jashoo [Fri, 12 Aug 2016 17:25:09 +0000 (10:25 -0700)]
Disable tests to get jit32 jobs green
See issues #6720, #6718, #6714 for more information
Jan Kotas [Fri, 12 Aug 2016 15:02:48 +0000 (08:02 -0700)]
Merge pull request #6712 from dotnet-bot/from-tfs
Merge changes from TFS
Jonghyun Park [Fri, 12 Aug 2016 15:02:22 +0000 (00:02 +0900)]
Enable FEATURE_STUBS_AS_IL for ARM/Linux (#6500)
This commit enables FEATURE_STUBS_AS_IL for ARM/Linux. This commit
tries to fix #6452.
Jan Kotas [Fri, 12 Aug 2016 06:36:12 +0000 (23:36 -0700)]
Fix unreachable code warnings with MSVC++ 18.10
[tfs-changeset: 1622176]
William Godbe [Thu, 11 Aug 2016 21:48:38 +0000 (14:48 -0700)]
Merge pull request #6690 from wtgodbe/regioninfo
Fix region info test on Debian
wtgodbe [Wed, 10 Aug 2016 21:16:48 +0000 (14:16 -0700)]
Fix region info test on Debian
Michelle McDaniel [Thu, 11 Aug 2016 20:39:22 +0000 (13:39 -0700)]
Merge pull request #6686 from adiaaida/formatted
Reformat jit source base using clang-format and clang-tidy
Brian Sullivan [Thu, 11 Aug 2016 20:12:40 +0000 (13:12 -0700)]
Merge pull request #6701 from dotnet-bot/from-tfs
Merge changes from TFS
William Godbe [Thu, 11 Aug 2016 19:13:32 +0000 (12:13 -0700)]
Merge pull request #6704 from dotnet/wtgodbe-patch-1
Update unix test instructions
William Godbe [Thu, 11 Aug 2016 19:13:19 +0000 (12:13 -0700)]
Update unix test instructions
William Godbe [Thu, 11 Aug 2016 18:59:47 +0000 (11:59 -0700)]
Merge pull request #6702 from dotnet/RunTestDocumentation
Fix linux test running documentation
William Godbe [Thu, 11 Aug 2016 18:59:35 +0000 (11:59 -0700)]
Fix linux test running documentation
We should specify that corefx will be from a Debug build, not a Release build.
smile21prc [Thu, 11 Aug 2016 17:45:10 +0000 (10:45 -0700)]
Merge pull request #6637 from smile21prc/coreclr-perf
Automate the perf data collection for JIT CodeQuality benchmarks on Windows.
Jan Kotas [Thu, 11 Aug 2016 17:32:59 +0000 (10:32 -0700)]
Add missing security annotation
[tfs-changeset: 1622038]
Michelle McDaniel [Tue, 9 Aug 2016 20:15:05 +0000 (13:15 -0700)]
Reformat jit sources with clang-tidy and format
This change is the result of running clang-tidy and clang-format on jit
sources.
Michelle McDaniel [Tue, 9 Aug 2016 16:59:01 +0000 (09:59 -0700)]
Prepare jit source for clang-tidy
In templates, clang-tidy will replace 0 with nullptr, but this is illegal
for primitive types. This change replaces 0 in two templated functions
with ZERO, which is defined to be 0 to avoid this issue.
Additioanlly, we need to conditionally define some macros for running
under __clang__ so they are found by clang-tidy.
Gaurav Khanna [Thu, 11 Aug 2016 16:27:01 +0000 (09:27 -0700)]
Merge pull request #6657 from gkhanna79/UpdateVer
Update package versions to 1.1.0
hqueue [Thu, 11 Aug 2016 16:21:41 +0000 (01:21 +0900)]
ARM: disable stack unwinding using DWARF (#6700)
libunwind for ARM does not interpret ARM vfpv3/NEON
registers in DWARF format correctly.
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Gaurav Khanna [Thu, 11 Aug 2016 13:43:38 +0000 (06:43 -0700)]
Merge pull request #6699 from dotnet-bot/UpdateDependencies20160811052348
Updating External dependencies to beta-24411-00
Rama krishnan Raghupathy [Thu, 11 Aug 2016 08:26:51 +0000 (01:26 -0700)]
Merge pull request #6691 from ramarag/ResolveWorkerChainLookupAsmStubFix
Preserving ResolveCacheElem in X9
dotnet-bot [Thu, 11 Aug 2016 05:23:48 +0000 (05:23 +0000)]
Updating External dependencies to beta-24411-00
Joseph Tremoulet [Thu, 11 Aug 2016 00:16:31 +0000 (20:16 -0400)]
Merge pull request #6285 from JosephTremoulet/LenProp
Propagate known array lengths to more places
Rama Krishnan Raghupathy [Wed, 10 Aug 2016 22:02:35 +0000 (15:02 -0700)]
Preserving ResolveCacheElem in X9
Gaurav Khanna [Wed, 10 Aug 2016 21:58:00 +0000 (14:58 -0700)]
Update Arm32 package version reference
Smile Wei [Wed, 3 Aug 2016 22:20:15 +0000 (15:20 -0700)]
Automate the perf data collection for JIT CodeQuality benchmarks on Windows.
Fix a quote.
Joseph Tremoulet [Thu, 23 Jun 2016 20:21:13 +0000 (16:21 -0400)]
Propagate known array lengths to more places
Earlyprop limits its propagation of array lengths to blocks marked
BBF_HAS_INDX, for throughput reasons. The importer sets that flag on
blocks that store/load array elements, but not blocks that simply extract
an array's length. This change renames the flag to BBF_HAS_IDX_LEN, and
updates the importer to set it also on blocks with ldlen operations. This
change also updates fgOptWhileLoop to propagate the flag when it
copies such an expression as part of a zero-trip test.
Fixes #2325.
Joseph Tremoulet [Wed, 10 Aug 2016 20:30:53 +0000 (16:30 -0400)]
Merge pull request #6682 from JosephTremoulet/ConstantIndex
Update FieldSeq annotations in EarlyProp
Gaurav Khanna [Wed, 10 Aug 2016 19:24:33 +0000 (12:24 -0700)]
Merge pull request #6671 from gkhanna79/FixLFAN
Fix LoadFromAssemblyName to invoke fallback context
Rahul Kumar [Wed, 10 Aug 2016 18:47:47 +0000 (11:47 -0700)]
Merge pull request #6606 from rahku/arm64todo
ARM64: Fix for ARM64TODO
Rahul Kumar [Thu, 4 Aug 2016 18:43:21 +0000 (11:43 -0700)]
ARM64: Fix for ARM64TODO
Jarret Shook [Wed, 10 Aug 2016 17:48:49 +0000 (10:48 -0700)]
Merge pull request #6683 from jashook/remove_unreachable_code
Fix unreachable code in flowgraph
Russ Keldorph [Wed, 10 Aug 2016 17:22:19 +0000 (10:22 -0700)]
Re-enable creating Tests_Native* log files
Recently we seem to have lost the ability to generate Tests_Native logs.
Currently, there are many build warnings that don't appear in any of the
logs because the native test build output is going to the console only.
The lines I'm adding are already duplicated other times in the same file,
so they are a candidate for refactoring, but I'll leave that for others.
Gaurav Khanna [Wed, 10 Aug 2016 16:26:04 +0000 (09:26 -0700)]
Add StackCrawl reference marker to each of the Assembly.Load implementations.
jashoo [Wed, 10 Aug 2016 16:19:53 +0000 (09:19 -0700)]
Fix unreachable code in flowgraph
There is debugging information that is expected to be printed; however,
unreachable because the function returns before printing under debug.
Fixed by moved the return past the debug log.
Ben Adams [Wed, 10 Aug 2016 15:17:37 +0000 (16:17 +0100)]
Improve Enum.ToString performance (#6645)
Reduces allocations by 66%; increases performance by 600% (x7)
With these changes ToString no longer boxes the value and doesn't create an empty array for `CustomAttributeRecords` when the enum is not flagged; also caches whether the enum is flagged.
It still boxes the enum to Enum to make the ToString virtual call however.
Using the @jkotas enummark :wink:
```csharp
enum MyEnum { One, Two, Three, Four, Five, Six, Seven, Eight, Nine, Ten };
public static void Main(string[] args)
{
(MyEnum.Seven).ToString();
int start = Environment.TickCount;
for (int i = 0; i <
10000000; i++)
{
(MyEnum.Seven).ToString();
}
int end = Environment.TickCount;
Console.WriteLine((end - start).ToString());
}
```
Pre: 5828ms, 5828ms, 5829ms (1.7M/s)
Post: 828ms, 828ms, 828ms (12.1M/s)
Gaurav Khanna [Wed, 10 Aug 2016 14:32:05 +0000 (07:32 -0700)]
Merge pull request #6678 from dotnet-bot/UpdateDependencies20160810052139
Updating External dependencies to beta-24410-00
Peter Jas [Wed, 10 Aug 2016 06:12:51 +0000 (09:12 +0300)]
Fix for VCR
190024210 and Win SDK 10.0.14393.0 (#6674)
dotnet-bot [Wed, 10 Aug 2016 05:21:39 +0000 (05:21 +0000)]
Updating External dependencies to beta-24410-00
Ben Adams [Wed, 10 Aug 2016 00:10:43 +0000 (01:10 +0100)]
Fix MemoryBarrier
Ben Adams [Tue, 9 Aug 2016 23:15:18 +0000 (00:15 +0100)]
Insert MemoryBarrier revert Comthreadpool
Egor Chesakov [Tue, 9 Aug 2016 22:25:45 +0000 (15:25 -0700)]
Merge pull request #6653 from echesakov/StackAllocation
Work towards objects stack allocation
Ben Adams [Tue, 9 Aug 2016 20:40:09 +0000 (21:40 +0100)]
PR feedback
Fadi Hanna [Tue, 9 Aug 2016 20:08:02 +0000 (13:08 -0700)]
TypeSystem generics test cases (#6663)
TypeSystem generics test cases (TypeGenerator tests)
Ben Adams [Sat, 30 Jul 2016 00:07:52 +0000 (01:07 +0100)]
Align to reduce false sharing
Ben Adams [Fri, 29 Jul 2016 17:01:33 +0000 (18:01 +0100)]
Adjust fences and add padding
Ben Adams [Fri, 29 Jul 2016 00:50:03 +0000 (01:50 +0100)]
Reduce false sharing in ManagedPerAppDomainTPCount
Ben Adams [Fri, 29 Jul 2016 00:23:54 +0000 (01:23 +0100)]
GetCleanCounts to Volatile read on x64
Use GetCleanCounts where result is used directly and
DangerousGetDirtyCounts when used as part of compare exchange loop
Ben Adams [Thu, 28 Jul 2016 22:36:12 +0000 (23:36 +0100)]
WorkerThreadStart volatile read+cmpxchg loop
Gaurav Khanna [Mon, 1 Aug 2016 19:03:26 +0000 (12:03 -0700)]
Fix LoadFromAssemblyName to invoke fallback context (analogous to static assembly loads within the context)