Updated documentation

Signed-off-by: Github Action <ubpf@users.noreply.github.com>
diff --git a/globals.html b/globals.html
index 91ee4a0..87e01a4 100644
--- a/globals.html
+++ b/globals.html
@@ -195,6 +195,9 @@
 <li>ubpf_toggle_bounds_check()
 : <a class="el" href="ubpf_8h.html#a80938918080712ac0667359fd163f1a5">ubpf.h</a>
 </li>
+<li>ubpf_toggle_undefined_behavior_check()
+: <a class="el" href="ubpf_8h.html#a4033cc1ab40ffc0d3de6efb70bb91768">ubpf.h</a>
+</li>
 <li>ubpf_translate()
 : <a class="el" href="ubpf_8h.html#ab34e26c0a46366345df354ce992448c4">ubpf.h</a>
 </li>
diff --git a/globals_func.html b/globals_func.html
index 01c41a0..6d0815a 100644
--- a/globals_func.html
+++ b/globals_func.html
@@ -128,6 +128,9 @@
 <li>ubpf_toggle_bounds_check()
 : <a class="el" href="ubpf_8h.html#a80938918080712ac0667359fd163f1a5">ubpf.h</a>
 </li>
+<li>ubpf_toggle_undefined_behavior_check()
+: <a class="el" href="ubpf_8h.html#a4033cc1ab40ffc0d3de6efb70bb91768">ubpf.h</a>
+</li>
 <li>ubpf_translate()
 : <a class="el" href="ubpf_8h.html#ab34e26c0a46366345df354ce992448c4">ubpf.h</a>
 </li>
diff --git a/search/all_6.js b/search/all_6.js
index 034cb2f..a54e7c2 100644
--- a/search/all_6.js
+++ b/search/all_6.js
@@ -30,7 +30,8 @@
   ['ubpf_5fset_5fregisters_36',['ubpf_set_registers',['../ubpf_8h.html#aeb0990b88e11d2a0ba89fbaf8086cc0f',1,'ubpf.h']]],
   ['ubpf_5fset_5funwind_5ffunction_5findex_37',['ubpf_set_unwind_function_index',['../ubpf_8h.html#a0046484ecdb72363d0c5ae710e7b96c3',1,'ubpf.h']]],
   ['ubpf_5ftoggle_5fbounds_5fcheck_38',['ubpf_toggle_bounds_check',['../ubpf_8h.html#a80938918080712ac0667359fd163f1a5',1,'ubpf.h']]],
-  ['ubpf_5ftranslate_39',['ubpf_translate',['../ubpf_8h.html#ab34e26c0a46366345df354ce992448c4',1,'ubpf.h']]],
-  ['ubpf_5ftranslate_5fex_40',['ubpf_translate_ex',['../ubpf_8h.html#afb2b46e62e54e7e8b81303def1014eb0',1,'ubpf.h']]],
-  ['ubpf_5funload_5fcode_41',['ubpf_unload_code',['../ubpf_8h.html#ae95b334d7eeb18072da3b9f4eeb66c25',1,'ubpf.h']]]
+  ['ubpf_5ftoggle_5fundefined_5fbehavior_5fcheck_39',['ubpf_toggle_undefined_behavior_check',['../ubpf_8h.html#a4033cc1ab40ffc0d3de6efb70bb91768',1,'ubpf.h']]],
+  ['ubpf_5ftranslate_40',['ubpf_translate',['../ubpf_8h.html#ab34e26c0a46366345df354ce992448c4',1,'ubpf.h']]],
+  ['ubpf_5ftranslate_5fex_41',['ubpf_translate_ex',['../ubpf_8h.html#afb2b46e62e54e7e8b81303def1014eb0',1,'ubpf.h']]],
+  ['ubpf_5funload_5fcode_42',['ubpf_unload_code',['../ubpf_8h.html#ae95b334d7eeb18072da3b9f4eeb66c25',1,'ubpf.h']]]
 ];
diff --git a/search/defines_0.js b/search/defines_0.js
index 165777b..671ad89 100644
--- a/search/defines_0.js
+++ b/search/defines_0.js
@@ -1,7 +1,7 @@
 var searchData=
 [
-  ['ubpf_5febpf_5fnonvolatile_5fsize_80',['UBPF_EBPF_NONVOLATILE_SIZE',['../ubpf_8h.html#ae89d6c1d7d2bda6006e9969e731826a3',1,'ubpf.h']]],
-  ['ubpf_5febpf_5fstack_5fsize_81',['UBPF_EBPF_STACK_SIZE',['../ubpf_8h.html#a91fdfd9d55e9ffcadcfe27a87340eace',1,'ubpf.h']]],
-  ['ubpf_5fmax_5fcall_5fdepth_82',['UBPF_MAX_CALL_DEPTH',['../ubpf_8h.html#a23e70b5f29f0296e69a72ec5cfc588d8',1,'ubpf.h']]],
-  ['ubpf_5fmax_5finsts_83',['UBPF_MAX_INSTS',['../ubpf_8h.html#a7b029668bfe717c5d7b33fba3847a00f',1,'ubpf.h']]]
+  ['ubpf_5febpf_5fnonvolatile_5fsize_82',['UBPF_EBPF_NONVOLATILE_SIZE',['../ubpf_8h.html#ae89d6c1d7d2bda6006e9969e731826a3',1,'ubpf.h']]],
+  ['ubpf_5febpf_5fstack_5fsize_83',['UBPF_EBPF_STACK_SIZE',['../ubpf_8h.html#a91fdfd9d55e9ffcadcfe27a87340eace',1,'ubpf.h']]],
+  ['ubpf_5fmax_5fcall_5fdepth_84',['UBPF_MAX_CALL_DEPTH',['../ubpf_8h.html#a23e70b5f29f0296e69a72ec5cfc588d8',1,'ubpf.h']]],
+  ['ubpf_5fmax_5finsts_85',['UBPF_MAX_INSTS',['../ubpf_8h.html#a7b029668bfe717c5d7b33fba3847a00f',1,'ubpf.h']]]
 ];
diff --git a/search/enums_0.js b/search/enums_0.js
index a26bd77..caea86d 100644
--- a/search/enums_0.js
+++ b/search/enums_0.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['jitmode_77',['JitMode',['../ubpf_8h.html#a4be1055c33e64a9f81abf25f8b5ddedd',1,'ubpf.h']]]
+  ['jitmode_79',['JitMode',['../ubpf_8h.html#a4be1055c33e64a9f81abf25f8b5ddedd',1,'ubpf.h']]]
 ];
diff --git a/search/enumvalues_0.js b/search/enumvalues_0.js
index 0bc50db..19eb18b 100644
--- a/search/enumvalues_0.js
+++ b/search/enumvalues_0.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['basicjitmode_78',['BasicJitMode',['../ubpf_8h.html#a4be1055c33e64a9f81abf25f8b5ddedda03f63951ae56be0eb19aae34d83706f8',1,'ubpf.h']]]
+  ['basicjitmode_80',['BasicJitMode',['../ubpf_8h.html#a4be1055c33e64a9f81abf25f8b5ddedda03f63951ae56be0eb19aae34d83706f8',1,'ubpf.h']]]
 ];
diff --git a/search/enumvalues_1.js b/search/enumvalues_1.js
index 5c9d2ad..1b59d9a 100644
--- a/search/enumvalues_1.js
+++ b/search/enumvalues_1.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['extendedjitmode_79',['ExtendedJitMode',['../ubpf_8h.html#a4be1055c33e64a9f81abf25f8b5ddedda81527be9d9bf3b5e45d8b59a4d1f19fd',1,'ubpf.h']]]
+  ['extendedjitmode_81',['ExtendedJitMode',['../ubpf_8h.html#a4be1055c33e64a9f81abf25f8b5ddedda81527be9d9bf3b5e45d8b59a4d1f19fd',1,'ubpf.h']]]
 ];
diff --git a/search/files_0.js b/search/files_0.js
index 9520674..5fd9cb8 100644
--- a/search/files_0.js
+++ b/search/files_0.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['mainpage_2edox_42',['mainpage.dox',['../mainpage_8dox.html',1,'']]]
+  ['mainpage_2edox_43',['mainpage.dox',['../mainpage_8dox.html',1,'']]]
 ];
diff --git a/search/files_1.js b/search/files_1.js
index 0a3df1b..90cab47 100644
--- a/search/files_1.js
+++ b/search/files_1.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['ubpf_2eh_43',['ubpf.h',['../ubpf_8h.html',1,'']]]
+  ['ubpf_2eh_44',['ubpf.h',['../ubpf_8h.html',1,'']]]
 ];
diff --git a/search/functions_0.js b/search/functions_0.js
index 92d3044..c5bedda 100644
--- a/search/functions_0.js
+++ b/search/functions_0.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['as_5fexternal_5ffunction_5ft_44',['as_external_function_t',['../ubpf_8h.html#a53971fe3966198c6fec238d81d94bfe8',1,'ubpf.h']]]
+  ['as_5fexternal_5ffunction_5ft_45',['as_external_function_t',['../ubpf_8h.html#a53971fe3966198c6fec238d81d94bfe8',1,'ubpf.h']]]
 ];
diff --git a/search/functions_1.js b/search/functions_1.js
index 3dfb5ff..50fabaa 100644
--- a/search/functions_1.js
+++ b/search/functions_1.js
@@ -1,27 +1,28 @@
 var searchData=
 [
-  ['ubpf_5fcompile_45',['ubpf_compile',['../ubpf_8h.html#a67b901bf6d169b6b28f818f15bd17cba',1,'ubpf.h']]],
-  ['ubpf_5fcompile_5fex_46',['ubpf_compile_ex',['../ubpf_8h.html#a281772f3e99c3d8505751297c51aa22e',1,'ubpf.h']]],
-  ['ubpf_5fcopy_5fjit_47',['ubpf_copy_jit',['../ubpf_8h.html#aa2604f93223a8f076b503ba144a6b1ce',1,'ubpf.h']]],
-  ['ubpf_5fcreate_48',['ubpf_create',['../ubpf_8h.html#a845988047e3c2fe9713e2f8a404d0751',1,'ubpf.h']]],
-  ['ubpf_5fdestroy_49',['ubpf_destroy',['../ubpf_8h.html#ae69dfc8e94c60e15a5db25fb6316274f',1,'ubpf.h']]],
-  ['ubpf_5fexec_50',['ubpf_exec',['../ubpf_8h.html#a1ce3eb22d45ec43436758a139ffc8c95',1,'ubpf.h']]],
-  ['ubpf_5fexec_5fex_51',['ubpf_exec_ex',['../ubpf_8h.html#a6ded3ae17d5879d7c19f32fa52cbbe26',1,'ubpf.h']]],
-  ['ubpf_5fget_5fregisters_52',['ubpf_get_registers',['../ubpf_8h.html#a2e649a921bff795712a97d3ad849f6e4',1,'ubpf.h']]],
-  ['ubpf_5fload_53',['ubpf_load',['../ubpf_8h.html#a8d32748c100c98d69dba8dcf0e9d4d0d',1,'ubpf.h']]],
-  ['ubpf_5fregister_54',['ubpf_register',['../ubpf_8h.html#a398c1c9b6d59876005eb64bbfab7b2b4',1,'ubpf.h']]],
-  ['ubpf_5fregister_5fdata_5fbounds_5fcheck_55',['ubpf_register_data_bounds_check',['../ubpf_8h.html#a286aa9da7688d1327756e967eafc2f03',1,'ubpf.h']]],
-  ['ubpf_5fregister_5fdata_5frelocation_56',['ubpf_register_data_relocation',['../ubpf_8h.html#a6ce8c1133902da4629c53aa82c159611',1,'ubpf.h']]],
-  ['ubpf_5fregister_5fexternal_5fdispatcher_57',['ubpf_register_external_dispatcher',['../ubpf_8h.html#a27fbf5d30614b9c4b618209d681c3653',1,'ubpf.h']]],
-  ['ubpf_5fregister_5fstack_5fusage_5fcalculator_58',['ubpf_register_stack_usage_calculator',['../ubpf_8h.html#aacb195bc0c95663214fe205613ff1c9a',1,'ubpf.h']]],
-  ['ubpf_5fset_5ferror_5fprint_59',['ubpf_set_error_print',['../ubpf_8h.html#ae7e25aeeb15d5dc04a58f99239c4774c',1,'ubpf.h']]],
-  ['ubpf_5fset_5finstruction_5flimit_60',['ubpf_set_instruction_limit',['../ubpf_8h.html#adfaef65d4add64487f09c0bd1d0a08df',1,'ubpf.h']]],
-  ['ubpf_5fset_5fjit_5fcode_5fsize_61',['ubpf_set_jit_code_size',['../ubpf_8h.html#a96cdff7433769540c61a1cf41a0c241a',1,'ubpf.h']]],
-  ['ubpf_5fset_5fpointer_5fsecret_62',['ubpf_set_pointer_secret',['../ubpf_8h.html#a3257e0611c177eeaba7053e2eca92701',1,'ubpf.h']]],
-  ['ubpf_5fset_5fregisters_63',['ubpf_set_registers',['../ubpf_8h.html#aeb0990b88e11d2a0ba89fbaf8086cc0f',1,'ubpf.h']]],
-  ['ubpf_5fset_5funwind_5ffunction_5findex_64',['ubpf_set_unwind_function_index',['../ubpf_8h.html#a0046484ecdb72363d0c5ae710e7b96c3',1,'ubpf.h']]],
-  ['ubpf_5ftoggle_5fbounds_5fcheck_65',['ubpf_toggle_bounds_check',['../ubpf_8h.html#a80938918080712ac0667359fd163f1a5',1,'ubpf.h']]],
-  ['ubpf_5ftranslate_66',['ubpf_translate',['../ubpf_8h.html#ab34e26c0a46366345df354ce992448c4',1,'ubpf.h']]],
-  ['ubpf_5ftranslate_5fex_67',['ubpf_translate_ex',['../ubpf_8h.html#afb2b46e62e54e7e8b81303def1014eb0',1,'ubpf.h']]],
-  ['ubpf_5funload_5fcode_68',['ubpf_unload_code',['../ubpf_8h.html#ae95b334d7eeb18072da3b9f4eeb66c25',1,'ubpf.h']]]
+  ['ubpf_5fcompile_46',['ubpf_compile',['../ubpf_8h.html#a67b901bf6d169b6b28f818f15bd17cba',1,'ubpf.h']]],
+  ['ubpf_5fcompile_5fex_47',['ubpf_compile_ex',['../ubpf_8h.html#a281772f3e99c3d8505751297c51aa22e',1,'ubpf.h']]],
+  ['ubpf_5fcopy_5fjit_48',['ubpf_copy_jit',['../ubpf_8h.html#aa2604f93223a8f076b503ba144a6b1ce',1,'ubpf.h']]],
+  ['ubpf_5fcreate_49',['ubpf_create',['../ubpf_8h.html#a845988047e3c2fe9713e2f8a404d0751',1,'ubpf.h']]],
+  ['ubpf_5fdestroy_50',['ubpf_destroy',['../ubpf_8h.html#ae69dfc8e94c60e15a5db25fb6316274f',1,'ubpf.h']]],
+  ['ubpf_5fexec_51',['ubpf_exec',['../ubpf_8h.html#a1ce3eb22d45ec43436758a139ffc8c95',1,'ubpf.h']]],
+  ['ubpf_5fexec_5fex_52',['ubpf_exec_ex',['../ubpf_8h.html#a6ded3ae17d5879d7c19f32fa52cbbe26',1,'ubpf.h']]],
+  ['ubpf_5fget_5fregisters_53',['ubpf_get_registers',['../ubpf_8h.html#a2e649a921bff795712a97d3ad849f6e4',1,'ubpf.h']]],
+  ['ubpf_5fload_54',['ubpf_load',['../ubpf_8h.html#a8d32748c100c98d69dba8dcf0e9d4d0d',1,'ubpf.h']]],
+  ['ubpf_5fregister_55',['ubpf_register',['../ubpf_8h.html#a398c1c9b6d59876005eb64bbfab7b2b4',1,'ubpf.h']]],
+  ['ubpf_5fregister_5fdata_5fbounds_5fcheck_56',['ubpf_register_data_bounds_check',['../ubpf_8h.html#a286aa9da7688d1327756e967eafc2f03',1,'ubpf.h']]],
+  ['ubpf_5fregister_5fdata_5frelocation_57',['ubpf_register_data_relocation',['../ubpf_8h.html#a6ce8c1133902da4629c53aa82c159611',1,'ubpf.h']]],
+  ['ubpf_5fregister_5fexternal_5fdispatcher_58',['ubpf_register_external_dispatcher',['../ubpf_8h.html#a27fbf5d30614b9c4b618209d681c3653',1,'ubpf.h']]],
+  ['ubpf_5fregister_5fstack_5fusage_5fcalculator_59',['ubpf_register_stack_usage_calculator',['../ubpf_8h.html#aacb195bc0c95663214fe205613ff1c9a',1,'ubpf.h']]],
+  ['ubpf_5fset_5ferror_5fprint_60',['ubpf_set_error_print',['../ubpf_8h.html#ae7e25aeeb15d5dc04a58f99239c4774c',1,'ubpf.h']]],
+  ['ubpf_5fset_5finstruction_5flimit_61',['ubpf_set_instruction_limit',['../ubpf_8h.html#adfaef65d4add64487f09c0bd1d0a08df',1,'ubpf.h']]],
+  ['ubpf_5fset_5fjit_5fcode_5fsize_62',['ubpf_set_jit_code_size',['../ubpf_8h.html#a96cdff7433769540c61a1cf41a0c241a',1,'ubpf.h']]],
+  ['ubpf_5fset_5fpointer_5fsecret_63',['ubpf_set_pointer_secret',['../ubpf_8h.html#a3257e0611c177eeaba7053e2eca92701',1,'ubpf.h']]],
+  ['ubpf_5fset_5fregisters_64',['ubpf_set_registers',['../ubpf_8h.html#aeb0990b88e11d2a0ba89fbaf8086cc0f',1,'ubpf.h']]],
+  ['ubpf_5fset_5funwind_5ffunction_5findex_65',['ubpf_set_unwind_function_index',['../ubpf_8h.html#a0046484ecdb72363d0c5ae710e7b96c3',1,'ubpf.h']]],
+  ['ubpf_5ftoggle_5fbounds_5fcheck_66',['ubpf_toggle_bounds_check',['../ubpf_8h.html#a80938918080712ac0667359fd163f1a5',1,'ubpf.h']]],
+  ['ubpf_5ftoggle_5fundefined_5fbehavior_5fcheck_67',['ubpf_toggle_undefined_behavior_check',['../ubpf_8h.html#a4033cc1ab40ffc0d3de6efb70bb91768',1,'ubpf.h']]],
+  ['ubpf_5ftranslate_68',['ubpf_translate',['../ubpf_8h.html#ab34e26c0a46366345df354ce992448c4',1,'ubpf.h']]],
+  ['ubpf_5ftranslate_5fex_69',['ubpf_translate_ex',['../ubpf_8h.html#afb2b46e62e54e7e8b81303def1014eb0',1,'ubpf.h']]],
+  ['ubpf_5funload_5fcode_70',['ubpf_unload_code',['../ubpf_8h.html#ae95b334d7eeb18072da3b9f4eeb66c25',1,'ubpf.h']]]
 ];
diff --git a/search/typedefs_0.js b/search/typedefs_0.js
index 7156cb3..85018f7 100644
--- a/search/typedefs_0.js
+++ b/search/typedefs_0.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['external_5ffunction_5fdispatcher_5ft_69',['external_function_dispatcher_t',['../ubpf_8h.html#aa819644ac2adf81271cf703f9eb5614b',1,'ubpf.h']]],
-  ['external_5ffunction_5ft_70',['external_function_t',['../ubpf_8h.html#a97c06ae6f43ae6e0cbca64ac1e70bc30',1,'ubpf.h']]],
-  ['external_5ffunction_5fvalidate_5ft_71',['external_function_validate_t',['../ubpf_8h.html#a924a4a1a3e782846945d6adbabbcbb9c',1,'ubpf.h']]]
+  ['external_5ffunction_5fdispatcher_5ft_71',['external_function_dispatcher_t',['../ubpf_8h.html#aa819644ac2adf81271cf703f9eb5614b',1,'ubpf.h']]],
+  ['external_5ffunction_5ft_72',['external_function_t',['../ubpf_8h.html#a97c06ae6f43ae6e0cbca64ac1e70bc30',1,'ubpf.h']]],
+  ['external_5ffunction_5fvalidate_5ft_73',['external_function_validate_t',['../ubpf_8h.html#a924a4a1a3e782846945d6adbabbcbb9c',1,'ubpf.h']]]
 ];
diff --git a/search/typedefs_1.js b/search/typedefs_1.js
index 9cf10f8..531d123 100644
--- a/search/typedefs_1.js
+++ b/search/typedefs_1.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['stack_5fusage_5fcalculator_5ft_72',['stack_usage_calculator_t',['../ubpf_8h.html#a087420d1735791ffa6c5c436f52da00e',1,'ubpf.h']]]
+  ['stack_5fusage_5fcalculator_5ft_74',['stack_usage_calculator_t',['../ubpf_8h.html#a087420d1735791ffa6c5c436f52da00e',1,'ubpf.h']]]
 ];
diff --git a/search/typedefs_2.js b/search/typedefs_2.js
index 54f053f..97cdaf0 100644
--- a/search/typedefs_2.js
+++ b/search/typedefs_2.js
@@ -1,7 +1,7 @@
 var searchData=
 [
-  ['ubpf_5fbounds_5fcheck_73',['ubpf_bounds_check',['../ubpf_8h.html#a64bd2f640f675e3eeff48ea52583d699',1,'ubpf.h']]],
-  ['ubpf_5fdata_5frelocation_74',['ubpf_data_relocation',['../ubpf_8h.html#a70fb644d080e8448c1db17bb99858391',1,'ubpf.h']]],
-  ['ubpf_5fjit_5fex_5ffn_75',['ubpf_jit_ex_fn',['../ubpf_8h.html#a30c41270d593fc7ffc2161f03f8c0b5b',1,'ubpf.h']]],
-  ['ubpf_5fjit_5ffn_76',['ubpf_jit_fn',['../ubpf_8h.html#a6334115c4408267ec35087ade6128fa0',1,'ubpf.h']]]
+  ['ubpf_5fbounds_5fcheck_75',['ubpf_bounds_check',['../ubpf_8h.html#a64bd2f640f675e3eeff48ea52583d699',1,'ubpf.h']]],
+  ['ubpf_5fdata_5frelocation_76',['ubpf_data_relocation',['../ubpf_8h.html#a70fb644d080e8448c1db17bb99858391',1,'ubpf.h']]],
+  ['ubpf_5fjit_5fex_5ffn_77',['ubpf_jit_ex_fn',['../ubpf_8h.html#a30c41270d593fc7ffc2161f03f8c0b5b',1,'ubpf.h']]],
+  ['ubpf_5fjit_5ffn_78',['ubpf_jit_fn',['../ubpf_8h.html#a6334115c4408267ec35087ade6128fa0',1,'ubpf.h']]]
 ];
diff --git a/ubpf_8h.html b/ubpf_8h.html
index b724d4a..335af55 100644
--- a/ubpf_8h.html
+++ b/ubpf_8h.html
@@ -206,6 +206,9 @@
 <tr class="memitem:adfaef65d4add64487f09c0bd1d0a08df"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ubpf_8h.html#adfaef65d4add64487f09c0bd1d0a08df">ubpf_set_instruction_limit</a> (struct ubpf_vm *vm, uint32_t limit, uint32_t *previous_limit)</td></tr>
 <tr class="memdesc:adfaef65d4add64487f09c0bd1d0a08df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the instruction limit for the VM. This is the maximum number of instructions that a program may execute during a call to ubpf_exec. It has no effect on JIT'd programs.  <a href="ubpf_8h.html#adfaef65d4add64487f09c0bd1d0a08df">More...</a><br /></td></tr>
 <tr class="separator:adfaef65d4add64487f09c0bd1d0a08df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4033cc1ab40ffc0d3de6efb70bb91768"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ubpf_8h.html#a4033cc1ab40ffc0d3de6efb70bb91768">ubpf_toggle_undefined_behavior_check</a> (struct ubpf_vm *vm, bool enable)</td></tr>
+<tr class="memdesc:a4033cc1ab40ffc0d3de6efb70bb91768"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or disable undefined behavior checks. Undefined behavior includes reading from uninitialized memory or using uninitialized registers. Default is disabled to preserve performance and compatibility with existing eBPF programs.  <a href="ubpf_8h.html#a4033cc1ab40ffc0d3de6efb70bb91768">More...</a><br /></td></tr>
+<tr class="separator:a4033cc1ab40ffc0d3de6efb70bb91768"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <h2 class="groupheader">Macro Definition Documentation</h2>
 <a id="ae89d6c1d7d2bda6006e9969e731826a3"></a>
@@ -1404,6 +1407,46 @@
 
 </div>
 </div>
+<a id="a4033cc1ab40ffc0d3de6efb70bb91768"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4033cc1ab40ffc0d3de6efb70bb91768">&#9670;&nbsp;</a></span>ubpf_toggle_undefined_behavior_check()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool ubpf_toggle_undefined_behavior_check </td>
+          <td>(</td>
+          <td class="paramtype">struct ubpf_vm *&#160;</td>
+          <td class="paramname"><em>vm</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>enable</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Enable or disable undefined behavior checks. Undefined behavior includes reading from uninitialized memory or using uninitialized registers. Default is disabled to preserve performance and compatibility with existing eBPF programs. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">vm</td><td>VM to enable or disable undefined behavior checks on. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">enable</td><td>Enable undefined behavior checks if true, disable if false. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true if undefined behavior checks were previously enabled. </dd>
+<dd>
+false if undefined behavior checks were previously disabled. </dd></dl>
+
+</div>
+</div>
 <a id="ab34e26c0a46366345df354ce992448c4"></a>
 <h2 class="memtitle"><span class="permalink"><a href="#ab34e26c0a46366345df354ce992448c4">&#9670;&nbsp;</a></span>ubpf_translate()</h2>
 
diff --git a/ubpf_8h_source.html b/ubpf_8h_source.html
index 7b0ced4..ee78160 100644
--- a/ubpf_8h_source.html
+++ b/ubpf_8h_source.html
@@ -248,11 +248,13 @@
 <div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;    <span class="keywordtype">int</span></div>
 <div class="line"><a name="l00545"></a><span class="lineno"><a class="line" href="ubpf_8h.html#adfaef65d4add64487f09c0bd1d0a08df">  545</a></span>&#160;    <a class="code" href="ubpf_8h.html#adfaef65d4add64487f09c0bd1d0a08df">ubpf_set_instruction_limit</a>(<span class="keyword">struct</span> ubpf_vm* vm, uint32_t limit, uint32_t* previous_limit);</div>
 <div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160; </div>
-<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;}</div>
-<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160; </div>
-<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;    <span class="keywordtype">bool</span></div>
+<div class="line"><a name="l00558"></a><span class="lineno"><a class="line" href="ubpf_8h.html#a4033cc1ab40ffc0d3de6efb70bb91768">  558</a></span>&#160;    <a class="code" href="ubpf_8h.html#a4033cc1ab40ffc0d3de6efb70bb91768">ubpf_toggle_undefined_behavior_check</a>(<span class="keyword">struct</span> ubpf_vm* vm, <span class="keywordtype">bool</span> enable);</div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;}</div>
+<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160; </div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;<span class="preprocessor">#endif</span></div>
 <div class="ttc" id="aubpf_8h_html_a0046484ecdb72363d0c5ae710e7b96c3"><div class="ttname"><a href="ubpf_8h.html#a0046484ecdb72363d0c5ae710e7b96c3">ubpf_set_unwind_function_index</a></div><div class="ttdeci">int ubpf_set_unwind_function_index(struct ubpf_vm *vm, unsigned int idx)</div><div class="ttdoc">Instruct the uBPF runtime to apply unwind-on-success semantics to a helper function....</div></div>
 <div class="ttc" id="aubpf_8h_html_a087420d1735791ffa6c5c436f52da00e"><div class="ttname"><a href="ubpf_8h.html#a087420d1735791ffa6c5c436f52da00e">stack_usage_calculator_t</a></div><div class="ttdeci">int(* stack_usage_calculator_t)(const struct ubpf_vm *vm, uint16_t pc, void *cookie)</div><div class="ttdoc">The type of a stack usage calculator callback function.</div><div class="ttdef"><b>Definition:</b> ubpf.h:201</div></div>
 <div class="ttc" id="aubpf_8h_html_a1ce3eb22d45ec43436758a139ffc8c95"><div class="ttname"><a href="ubpf_8h.html#a1ce3eb22d45ec43436758a139ffc8c95">ubpf_exec</a></div><div class="ttdeci">int ubpf_exec(const struct ubpf_vm *vm, void *mem, size_t mem_len, uint64_t *bpf_return_value)</div><div class="ttdoc">Execute a BPF program in the VM using the interpreter.</div></div>
@@ -263,6 +265,7 @@
 <div class="ttc" id="aubpf_8h_html_a30c41270d593fc7ffc2161f03f8c0b5b"><div class="ttname"><a href="ubpf_8h.html#a30c41270d593fc7ffc2161f03f8c0b5b">ubpf_jit_ex_fn</a></div><div class="ttdeci">uint64_t(* ubpf_jit_ex_fn)(void *mem, size_t mem_len, uint8_t *stack, size_t stack_len)</div><div class="ttdoc">Opaque type for a uBPF JIT compiled function with external stack.</div><div class="ttdef"><b>Definition:</b> ubpf.h:72</div></div>
 <div class="ttc" id="aubpf_8h_html_a3257e0611c177eeaba7053e2eca92701"><div class="ttname"><a href="ubpf_8h.html#a3257e0611c177eeaba7053e2eca92701">ubpf_set_pointer_secret</a></div><div class="ttdeci">int ubpf_set_pointer_secret(struct ubpf_vm *vm, uint64_t secret)</div><div class="ttdoc">Optional secret to improve ROP protection.</div></div>
 <div class="ttc" id="aubpf_8h_html_a398c1c9b6d59876005eb64bbfab7b2b4"><div class="ttname"><a href="ubpf_8h.html#a398c1c9b6d59876005eb64bbfab7b2b4">ubpf_register</a></div><div class="ttdeci">int ubpf_register(struct ubpf_vm *vm, unsigned int index, const char *name, external_function_t fn)</div><div class="ttdoc">Register an external function. The immediate field of a CALL instruction is an index into an array of...</div></div>
+<div class="ttc" id="aubpf_8h_html_a4033cc1ab40ffc0d3de6efb70bb91768"><div class="ttname"><a href="ubpf_8h.html#a4033cc1ab40ffc0d3de6efb70bb91768">ubpf_toggle_undefined_behavior_check</a></div><div class="ttdeci">bool ubpf_toggle_undefined_behavior_check(struct ubpf_vm *vm, bool enable)</div><div class="ttdoc">Enable or disable undefined behavior checks. Undefined behavior includes reading from uninitialized m...</div></div>
 <div class="ttc" id="aubpf_8h_html_a4be1055c33e64a9f81abf25f8b5ddedd"><div class="ttname"><a href="ubpf_8h.html#a4be1055c33e64a9f81abf25f8b5ddedd">JitMode</a></div><div class="ttdeci">JitMode</div><div class="ttdoc">Enum to describe JIT mode.</div><div class="ttdef"><b>Definition:</b> ubpf.h:92</div></div>
 <div class="ttc" id="aubpf_8h_html_a4be1055c33e64a9f81abf25f8b5ddedda03f63951ae56be0eb19aae34d83706f8"><div class="ttname"><a href="ubpf_8h.html#a4be1055c33e64a9f81abf25f8b5ddedda03f63951ae56be0eb19aae34d83706f8">BasicJitMode</a></div><div class="ttdeci">@ BasicJitMode</div><div class="ttdef"><b>Definition:</b> ubpf.h:94</div></div>
 <div class="ttc" id="aubpf_8h_html_a4be1055c33e64a9f81abf25f8b5ddedda81527be9d9bf3b5e45d8b59a4d1f19fd"><div class="ttname"><a href="ubpf_8h.html#a4be1055c33e64a9f81abf25f8b5ddedda81527be9d9bf3b5e45d8b59a4d1f19fd">ExtendedJitMode</a></div><div class="ttdeci">@ ExtendedJitMode</div><div class="ttdef"><b>Definition:</b> ubpf.h:93</div></div>