This patch creates a separate test directory for each offloading target to be tested.
This allows to test multiple architectures in one configuration, while still see all failing tests separately.
The lit test names include the target triple, so that it will be easier to spot the failing target.
The new %...-generic substitutions are preferred over the specialized rules. The specialized rules should only be used, if different action is required for different targets. I only updated mapping/private_mapping.c to demonstrate the necessary change.
This patch also allows to mark expected failing tests based on the target-triple, the currently used triple is added to the "features":
%XFAIL: target-triple