cg_llvm: stop identifying ADTs in LLVM IR
Now that we use opaque pointers, ADTs can no longer be recursive, so we do not need to name them. Previously, this would be necessary if you had a struct like ```rs struct Foo(Box<Foo>, u64, u64); ``` which would be represented with something like ```ll %Foo = type { %Foo*, i64, i64 } ``` which is now just ```ll { ptr, i64, i64 } ```
This commit is contained in:
parent
04303cfb3a
commit
1d7f728901
@ -61,9 +61,6 @@ fn uncached_llvm_type<'a, 'tcx>(
|
||||
}
|
||||
Some(name)
|
||||
}
|
||||
// Use identified structure types for ADT. Due to pointee types in LLVM IR their definition
|
||||
// might be recursive. Other cases are non-recursive and we can use literal structure types.
|
||||
ty::Adt(..) => Some(String::new()),
|
||||
_ => None,
|
||||
};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user