@@ -845,15 +845,12 @@ pub enum LLVMVerifierFailureAction {
845
845
LLVMReturnStatusAction ,
846
846
}
847
847
848
- #[ allow( dead_code) ]
849
848
pub ( crate ) unsafe fn enzyme_rust_forward_diff (
850
849
logic_ref : EnzymeLogicRef ,
851
850
type_analysis : EnzymeTypeAnalysisRef ,
852
851
fnc : & Value ,
853
852
input_diffactivity : Vec < DiffActivity > ,
854
853
ret_diffactivity : DiffActivity ,
855
- _input_tts : Vec < TypeTree > ,
856
- _output_tt : TypeTree ,
857
854
void_ret : bool ,
858
855
) -> ( & Value , Vec < usize > ) {
859
856
let ret_activity = cdiffe_from ( ret_diffactivity) ;
@@ -882,9 +879,6 @@ pub(crate) unsafe fn enzyme_rust_forward_diff(
882
879
} ;
883
880
trace ! ( "ret_primary_ret: {}" , & ret_primary_ret) ;
884
881
885
- //let mut args_tree = input_tts.iter().map(|x| x.inner).collect::<Vec<_>>();
886
- //let mut args_tree = vec![TypeTree::new().inner; typetree.input_tt.len()];
887
-
888
882
// We don't support volatile / extern / (global?) values.
889
883
// Just because I didn't had time to test them, and it seems less urgent.
890
884
let args_uncacheable = vec ! [ 0 ; input_activity. len( ) ] ;
@@ -900,9 +894,6 @@ pub(crate) unsafe fn enzyme_rust_forward_diff(
900
894
let tree_tmp = TypeTree :: new ( ) ;
901
895
let mut args_tree = vec ! [ tree_tmp. inner; input_activity. len( ) ] ;
902
896
903
- //let mut args_tree = vec![std::ptr::null_mut(); input_activity.len()];
904
- //let ret_tt = std::ptr::null_mut();
905
- //let mut args_tree = vec![TypeTree::new().inner; input_tts.len()];
906
897
let ret_tt = TypeTree :: new ( ) ;
907
898
let dummy_type = CFnTypeInfo {
908
899
Arguments : args_tree. as_mut_ptr ( ) ,
@@ -944,8 +935,6 @@ pub(crate) unsafe fn enzyme_rust_reverse_diff(
944
935
fnc : & Value ,
945
936
rust_input_activity : Vec < DiffActivity > ,
946
937
ret_activity : DiffActivity ,
947
- input_tts : Vec < TypeTree > ,
948
- _output_tt : TypeTree ,
949
938
) -> ( & Value , Vec < usize > ) {
950
939
let ( primary_ret, ret_activity) = match ret_activity {
951
940
DiffActivity :: Const => ( true , CDIFFE_TYPE :: DFT_CONSTANT ) ,
@@ -971,8 +960,6 @@ pub(crate) unsafe fn enzyme_rust_reverse_diff(
971
960
input_activity. push ( cdiffe_from ( x) ) ;
972
961
}
973
962
974
- //let args_tree = input_tts.iter().map(|x| x.inner).collect::<Vec<_>>();
975
-
976
963
// We don't support volatile / extern / (global?) values.
977
964
// Just because I didn't had time to test them, and it seems less urgent.
978
965
let args_uncacheable = vec ! [ 0 ; input_activity. len( ) ] ;
@@ -982,14 +969,11 @@ pub(crate) unsafe fn enzyme_rust_reverse_diff(
982
969
assert ! ( num_fnc_args == input_activity. len( ) as u32 ) ;
983
970
let kv_tmp = IntList { data : std:: ptr:: null_mut ( ) , size : 0 } ;
984
971
985
- let mut known_values = vec ! [ kv_tmp; input_tts . len( ) ] ;
972
+ let mut known_values = vec ! [ kv_tmp; input_activity . len( ) ] ;
986
973
987
974
let tree_tmp = TypeTree :: new ( ) ;
988
- let mut args_tree = vec ! [ tree_tmp. inner; input_tts. len( ) ] ;
989
- //let mut args_tree = vec![TypeTree::new().inner; input_tts.len()];
975
+ let mut args_tree = vec ! [ tree_tmp. inner; input_activity. len( ) ] ;
990
976
let ret_tt = TypeTree :: new ( ) ;
991
- //let mut args_tree = vec![std::ptr::null_mut(); input_tts.len()];
992
- //let ret_tt = std::ptr::null_mut();
993
977
let dummy_type = CFnTypeInfo {
994
978
Arguments : args_tree. as_mut_ptr ( ) ,
995
979
Return : ret_tt. inner ,
@@ -1029,9 +1013,6 @@ pub(crate) unsafe fn enzyme_rust_reverse_diff(
1029
1013
}
1030
1014
1031
1015
extern "C" {
1032
- // TODO: can I just ignore the non void return
1033
- // EraseFromParent doesn't exist :(
1034
- //pub fn LLVMEraseFromParent(BB: &BasicBlock) -> &Value;
1035
1016
// Enzyme
1036
1017
pub fn LLVMRustAddFncParamAttr < ' a > (
1037
1018
F : & ' a Value ,
0 commit comments