Enzyme
main
Loading...
Searching...
No Matches
TypeAnalysis
RustDebugInfo.h
Go to the documentation of this file.
1
//===- RustDebugInfo.h - Declaration of Rust Debug Info Parser -------===//
2
//
3
// Enzyme Project
4
//
5
// Part of the Enzyme Project, under the Apache License v2.0 with LLVM
6
// Exceptions. See https://llvm.org/LICENSE.txt for license information.
7
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
8
//
9
// If using this code in an academic setting, please cite the following:
10
// @incollection{enzymeNeurips,
11
// title = {Instead of Rewriting Foreign Code for Machine Learning,
12
// Automatically Synthesize Fast Gradients},
13
// author = {Moses, William S. and Churavy, Valentin},
14
// booktitle = {Advances in Neural Information Processing Systems 33},
15
// year = {2020},
16
// note = {To appear in},
17
// }
18
//
19
//===-------------------------------------------------------------------===//
20
//
21
// This file contains the declaration of the Rust debug info parsing function
22
// which parses the debug info appended to LLVM IR generated by rustc and
23
// extracts useful type info from it. The type info will be used to initialize
24
// the following type analysis.
25
//
26
//===-------------------------------------------------------------------===//
27
#ifndef ENZYME_RUSTDEBUGINFO_H
28
#define ENZYME_RUSTDEBUGINFO_H 1
29
30
#include "llvm/IR/Instructions.h"
31
#include "llvm/IR/IntrinsicInst.h"
32
33
#include "
TypeTree.h
"
34
35
/// Construct the type tree from debug info of an instruction
36
TypeTree
parseDIType
(llvm::DbgDeclareInst &I, llvm::DataLayout &DL);
37
38
#endif
// ENZYME_RUSTDEBUGINFO_H
parseDIType
TypeTree parseDIType(llvm::DbgDeclareInst &I, llvm::DataLayout &DL)
Construct the type tree from debug info of an instruction.
TypeTree.h
TypeTree
Class representing the underlying types of values as sequences of offsets to a ConcreteType.
Definition
TypeTree.h:72
Generated on Fri May 8 2026 19:56:26 for Enzyme by
1.12.0