py/profile: Remove the requirement to disable MICROPY_COMP_CONST.

The only reason that const had to be disabled was to make the test output
match CPython when const was involved.  Instead, this commit fixes the test
to handle the lines where const is used.

Also:
- remove the special handling for MICROPY_PERSISTENT_CODE_SAVE in
  unix/mpconfigport.h, and make this automatic.
- move the check for MICROPY_PERSISTENT_CODE_SAVE to where it's used (like
  we do for other similar checks) and add a comment explaining it.

This work was funded through GitHub Sponsors.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
This commit is contained in:
Jim Mussared
2023-08-23 13:30:20 +10:00
committed by Damien George
parent 4a3fdc0e76
commit b2b5bcce28
5 changed files with 23 additions and 20 deletions

View File

@@ -312,9 +312,11 @@
#define MICROPY_PERSISTENT_CODE_LOAD (0)
#endif
// Whether to support saving of persistent code
// Whether to support saving of persistent code, i.e. for mpy-cross to
// generate .mpy files. Enabling this enables additional metadata on raw code
// objects which is also required for sys.settrace.
#ifndef MICROPY_PERSISTENT_CODE_SAVE
#define MICROPY_PERSISTENT_CODE_SAVE (0)
#define MICROPY_PERSISTENT_CODE_SAVE (MICROPY_PY_SYS_SETTRACE)
#endif
// Whether to support saving persistent code to a file via mp_raw_code_save_file
@@ -2013,14 +2015,4 @@ typedef double mp_float_t;
#define MP_WARN_CAT(x) (NULL)
#endif
// Feature dependency check.
#if MICROPY_PY_SYS_SETTRACE
#if !MICROPY_PERSISTENT_CODE_SAVE
#error "MICROPY_PY_SYS_SETTRACE requires MICROPY_PERSISTENT_CODE_SAVE to be enabled"
#endif
#if MICROPY_COMP_CONST
#error "MICROPY_PY_SYS_SETTRACE requires MICROPY_COMP_CONST to be disabled"
#endif
#endif
#endif // MICROPY_INCLUDED_PY_MPCONFIG_H