@@ -290,9 +290,11 @@ Module ScriptModuleDeserializer::deserialize(
290290Module import_ir_module (
291291 std::shared_ptr<CompilationUnit> cu,
292292 std::istream& in,
293- c10::optional<at::Device> device) {
293+ c10::optional<at::Device> device,
294+ bool load_debug_files) {
294295 ExtraFilesMap extra_files;
295- return import_ir_module (std::move (cu), in, device, extra_files);
296+ return import_ir_module (
297+ std::move (cu), in, device, extra_files, load_debug_files);
296298}
297299
298300static Module _load_jit_module_from_bytes (
@@ -344,12 +346,14 @@ Module import_ir_module(
344346 std::shared_ptr<CompilationUnit> cu,
345347 std::istream& in,
346348 c10::optional<at::Device> device,
347- ExtraFilesMap& extra_files) {
349+ ExtraFilesMap& extra_files,
350+ bool load_debug_files) {
348351 in.seekg (0 , in.beg );
349352 // NOTE: Zipformat can be large files. So using stream version directly
350353 // instead of reading the file all at once.
351354 if (getFileFormat (in) != FileFormat::FlatbufferFileFormat) {
352355 auto reader = torch::make_unique<PyTorchStreamReader>(&in);
356+ reader->setShouldLoadDebugSymbol (load_debug_files);
353357 ScriptModuleDeserializer deserializer (std::move (cu), std::move (reader));
354358 return deserializer.deserialize (device, extra_files);
355359 }
@@ -379,20 +383,24 @@ Module import_ir_module(
379383Module import_ir_module (
380384 std::shared_ptr<CompilationUnit> cu,
381385 const std::string& filename,
382- c10::optional<at::Device> device) {
386+ c10::optional<at::Device> device,
387+ bool load_debug_files) {
383388 ExtraFilesMap extra_files;
384- return import_ir_module (std::move (cu), filename, device, extra_files);
389+ return import_ir_module (
390+ std::move (cu), filename, device, extra_files, load_debug_files);
385391}
386392
387393Module import_ir_module (
388394 std::shared_ptr<CompilationUnit> cu,
389395 const std::string& filename,
390396 c10::optional<at::Device> device,
391- ExtraFilesMap& extra_files) {
397+ ExtraFilesMap& extra_files,
398+ bool load_debug_files) {
392399 // NOTE: Zipformat can be large files. So using stream version directly
393400 // instead of reading the file all at once.
394401 if (getFileFormat (filename) != FileFormat::FlatbufferFileFormat) {
395402 auto reader = torch::make_unique<PyTorchStreamReader>(filename);
403+ reader->setShouldLoadDebugSymbol (load_debug_files);
396404 ScriptModuleDeserializer deserializer (std::move (cu), std::move (reader));
397405 return deserializer.deserialize (device, extra_files);
398406 }
@@ -405,70 +413,90 @@ Module import_ir_module(
405413Module import_ir_module (
406414 std::shared_ptr<CompilationUnit> cu,
407415 std::unique_ptr<ReadAdapterInterface> rai,
408- c10::optional<at::Device> device) {
416+ c10::optional<at::Device> device,
417+ bool load_debug_files) {
409418 ExtraFilesMap extra_files;
410- return import_ir_module (std::move (cu), std::move (rai), device, extra_files);
419+ return import_ir_module (
420+ std::move (cu), std::move (rai), device, extra_files, load_debug_files);
411421}
412422
413423Module import_ir_module (
414424 std::shared_ptr<CompilationUnit> cu,
415425 std::unique_ptr<ReadAdapterInterface> rai,
416426 c10::optional<at::Device> device,
417- ExtraFilesMap& extra_files) {
427+ ExtraFilesMap& extra_files,
428+ bool load_debug_files) {
418429 std::shared_ptr<ReadAdapterInterface> rai_shared = std::move (rai);
419- return import_ir_module (cu, rai_shared, device, extra_files);
430+ return import_ir_module (
431+ cu, rai_shared, device, extra_files, load_debug_files);
420432}
421433
422434Module import_ir_module (
423435 std::shared_ptr<CompilationUnit> cu,
424436 std::shared_ptr<ReadAdapterInterface> rai,
425437 c10::optional<at::Device> device,
426- ExtraFilesMap& extra_files) {
438+ ExtraFilesMap& extra_files,
439+ bool load_debug_files) {
427440 auto reader = std::make_shared<PyTorchStreamReader>(std::move (rai));
441+ reader->setShouldLoadDebugSymbol (load_debug_files);
428442 ScriptModuleDeserializer deserializer (std::move (cu), std::move (reader));
429443 return deserializer.deserialize (device, extra_files);
430444}
431445
432- Module load (std::istream& in, c10::optional<at::Device> device) {
446+ Module load (
447+ std::istream& in,
448+ c10::optional<at::Device> device,
449+ bool load_debug_files) {
433450 auto cu = std::make_shared<CompilationUnit>();
434- return import_ir_module (std::move (cu), in, device);
451+ return import_ir_module (std::move (cu), in, device, load_debug_files );
435452}
436453
437454Module load (
438455 std::istream& in,
439456 c10::optional<at::Device> device,
440- ExtraFilesMap& extra_files) {
457+ ExtraFilesMap& extra_files,
458+ bool load_debug_files) {
441459 auto cu = std::make_shared<CompilationUnit>();
442- return import_ir_module (std::move (cu), in, device, extra_files);
460+ return import_ir_module (
461+ std::move (cu), in, device, extra_files, load_debug_files);
443462}
444463
445- Module load (const std::string& filename, c10::optional<at::Device> device) {
464+ Module load (
465+ const std::string& filename,
466+ c10::optional<at::Device> device,
467+ bool load_debug_files) {
446468 auto cu = std::make_shared<CompilationUnit>();
447- return import_ir_module (std::move (cu), filename, device);
469+ return import_ir_module (std::move (cu), filename, device, load_debug_files );
448470}
449471
450472Module load (
451473 const std::string& filename,
452474 c10::optional<at::Device> device,
453- ExtraFilesMap& extra_files) {
475+ ExtraFilesMap& extra_files,
476+ bool load_debug_files) {
454477 auto cu = std::make_shared<CompilationUnit>();
455- return import_ir_module (std::move (cu), filename, device, extra_files);
478+ return import_ir_module (
479+ std::move (cu), filename, device, extra_files, load_debug_files);
456480}
457481
458482Module load (
459483 std::shared_ptr<ReadAdapterInterface> rai,
460- c10::optional<c10::Device> device) {
484+ c10::optional<c10::Device> device,
485+ bool load_debug_files) {
461486 auto cu = std::make_shared<CompilationUnit>();
462487 ExtraFilesMap extra_files;
463- return import_ir_module (std::move (cu), std::move (rai), device, extra_files);
488+ return import_ir_module (
489+ std::move (cu), std::move (rai), device, extra_files, load_debug_files);
464490}
465491
466492Module load (
467493 std::shared_ptr<ReadAdapterInterface> rai,
468494 c10::optional<c10::Device> device,
469- ExtraFilesMap& extra_files) {
495+ ExtraFilesMap& extra_files,
496+ bool load_debug_files) {
470497 auto cu = std::make_shared<CompilationUnit>();
471- return import_ir_module (std::move (cu), std::move (rai), device, extra_files);
498+ return import_ir_module (
499+ std::move (cu), std::move (rai), device, extra_files, load_debug_files);
472500}
473501
474502Module _load_jit_module_from_bytes (
0 commit comments