Loom C API
Public Loom compiler C API
Loading...
Searching...
No Matches
sanitizer.h File Reference

Sanitizer compile options. More...

Go to the source code of this file.

Data Structures

struct  loomc_sanitizer_options_t
 Invocation option extension that enables sanitizer assertions. More...

Macros

#define LOOMC_SANITIZER_CHECKS_ASAN_LIKE   ((loomc_sanitizer_checks_t)LOOMC_SANITIZER_CHECK_ACCESS)
 ASAN-like preset over Loom's unified sanitizer check bitset.
#define LOOMC_SANITIZER_CHECKS_UBSAN_LIKE
 UBSAN-like preset over Loom's unified sanitizer check bitset.
#define LOOMC_SANITIZER_CHECKS_TSAN_LIKE   ((loomc_sanitizer_checks_t)LOOMC_SANITIZER_CHECK_RACE)
 TSAN-like preset over Loom's unified sanitizer check bitset.

Typedefs

typedef uint64_t loomc_sanitizer_checks_t
 Bitset of loomc_sanitizer_check_bit_e values selecting assertion classes.
typedef uint32_t loomc_sanitizer_flags_t
 Bitset of loomc_sanitizer_flag_bit_e values controlling sanitizer behavior.

Enumerations

enum  loomc_sanitizer_check_bit_e { LOOMC_SANITIZER_CHECK_ACCESS = 1u << 0 , LOOMC_SANITIZER_CHECK_VALUE = 1u << 1 , LOOMC_SANITIZER_CHECK_OPERATION = 1u << 2 , LOOMC_SANITIZER_CHECK_RACE = 1u << 3 }
 Sanitizer assertion classes that can be enabled independently. More...
enum  loomc_sanitizer_flag_bit_e { LOOMC_SANITIZER_FLAG_NONE = 0u }
 Additional sanitizer behavior flag bits. More...
enum  loomc_sanitizer_reporting_mode_t { LOOMC_SANITIZER_REPORTING_MODE_DEFAULT = 0 , LOOMC_SANITIZER_REPORTING_MODE_TRAP = 1 , LOOMC_SANITIZER_REPORTING_MODE_REPORT_ONLY = 2 }
 Target-specific behavior when a lowered sanitizer assertion fails. More...

Detailed Description

Sanitizer compile options.

Loom sanitizer options select semantic assertion classes. ASAN-like, UBSAN-like, and TSAN-like are public preset names over one shared bitset; compiler and target internals traffic in the concrete assertion classes.

Macro Definition Documentation

◆ LOOMC_SANITIZER_CHECKS_UBSAN_LIKE

#define LOOMC_SANITIZER_CHECKS_UBSAN_LIKE
Value:
@ LOOMC_SANITIZER_CHECK_VALUE
Enables SSA value assertions.
Definition sanitizer.h:29
@ LOOMC_SANITIZER_CHECK_OPERATION
Enables operation-level assertions.
Definition sanitizer.h:32
uint64_t loomc_sanitizer_checks_t
Bitset of loomc_sanitizer_check_bit_e values selecting assertion classes.
Definition sanitizer.h:38

UBSAN-like preset over Loom's unified sanitizer check bitset.

Enumeration Type Documentation

◆ loomc_sanitizer_check_bit_e

Sanitizer assertion classes that can be enabled independently.

Enumerator
LOOMC_SANITIZER_CHECK_ACCESS 

Enables memory access assertions.

LOOMC_SANITIZER_CHECK_VALUE 

Enables SSA value assertions.

LOOMC_SANITIZER_CHECK_OPERATION 

Enables operation-level assertions.

LOOMC_SANITIZER_CHECK_RACE 

Enables data-race observations.

◆ loomc_sanitizer_flag_bit_e

Additional sanitizer behavior flag bits.

Enumerator
LOOMC_SANITIZER_FLAG_NONE 

No sanitizer flags are currently defined.

◆ loomc_sanitizer_reporting_mode_t

Target-specific behavior when a lowered sanitizer assertion fails.

Enumerator
LOOMC_SANITIZER_REPORTING_MODE_DEFAULT 

Use the target's default structured sanitizer report path.

LOOMC_SANITIZER_REPORTING_MODE_TRAP 

Trap directly on sanitizer failures without emitting structured reports.

LOOMC_SANITIZER_REPORTING_MODE_REPORT_ONLY 

Emit structured sanitizer reports without using a direct trap.