Support more than one bundles in a single .kernel section

When compiling with Early Finalization enabled in HCC,
the resulting .kernel section of the host object now may
contain more than one device code bundles.  This is to
teach the HIP runtime to correctly extract all the
bundles from the .kernel section.
Cette révision appartient à :
Siu Chi Chan
2018-10-18 16:53:03 -04:00
Parent 7e8046cfe3
révision 30ce25e627
2 fichiers modifiés avec 15 ajouts et 4 suppressions
+5
Voir le fichier
@@ -84,6 +84,9 @@ class Bundled_code_header {
std::copy_n(f + y.header.offset, y.header.bundle_sz, std::back_inserter(y.blob));
it += y.header.triple_sz;
x.bundled_code_size = std::max(x.bundled_code_size,
y.header.offset + y.header.bundle_sz);
}
return true;
@@ -123,6 +126,8 @@ class Bundled_code_header {
// MANIPULATORS
Bundled_code_header& operator=(const Bundled_code_header&) = default;
Bundled_code_header& operator=(Bundled_code_header&&) = default;
size_t bundled_code_size = 0;
};
// CREATORS