summaryrefslogtreecommitdiff
path: root/shared-module
diff options
context:
space:
mode:
authorKevin Matocha <kmatocha@icloud.com>2020-08-21 19:10:13 -0500
committerKevin Matocha <kmatocha@icloud.com>2020-08-21 19:10:13 -0500
commit983e1af33d0440329aa4f34109994f8597f0737a (patch)
treee485953c4d10beea4c86c5c2e2dc782a6f55cd14 /shared-module
parentdc502a5f26fdf5514eb835fae5f523c1b15c23b5 (diff)
remove other extraneous files
Diffstat (limited to 'shared-module')
-rw-r--r--shared-module/memorymonitor/AllocationAlarm 2.c94
-rw-r--r--shared-module/memorymonitor/AllocationAlarm 2.h51
-rw-r--r--shared-module/memorymonitor/AllocationSize 2.c91
-rw-r--r--shared-module/memorymonitor/AllocationSize 2.h51
-rw-r--r--shared-module/memorymonitor/__init__ 2.c39
-rw-r--r--shared-module/memorymonitor/__init__ 2.h35
6 files changed, 0 insertions, 361 deletions
diff --git a/shared-module/memorymonitor/AllocationAlarm 2.c b/shared-module/memorymonitor/AllocationAlarm 2.c
deleted file mode 100644
index 35f4e4c63..000000000
--- a/shared-module/memorymonitor/AllocationAlarm 2.c
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * This file is part of the Micro Python project, http://micropython.org/
- *
- * The MIT License (MIT)
- *
- * Copyright (c) 2020 Scott Shawcroft for Adafruit Industries
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#include "shared-bindings/memorymonitor/__init__.h"
-#include "shared-bindings/memorymonitor/AllocationAlarm.h"
-
-#include "py/gc.h"
-#include "py/mpstate.h"
-#include "py/runtime.h"
-
-void common_hal_memorymonitor_allocationalarm_construct(memorymonitor_allocationalarm_obj_t* self, size_t minimum_block_count) {
- self->minimum_block_count = minimum_block_count;
- self->next = NULL;
- self->previous = NULL;
-}
-
-void common_hal_memorymonitor_allocationalarm_set_ignore(memorymonitor_allocationalarm_obj_t* self, mp_int_t count) {
- self->count = count;
-}
-
-void common_hal_memorymonitor_allocationalarm_pause(memorymonitor_allocationalarm_obj_t* self) {
- // Check to make sure we aren't already paused. We can be if we're exiting from an exception we
- // caused.
- if (self->previous == NULL) {
- return;
- }
- *self->previous = self->next;
- self->next = NULL;
- self->previous = NULL;
-}
-
-void common_hal_memorymonitor_allocationalarm_resume(memorymonitor_allocationalarm_obj_t* self) {
- if (self->previous != NULL) {
- mp_raise_RuntimeError(translate("Already running"));
- }
- self->next = MP_STATE_VM(active_allocationalarms);
- self->previous = (memorymonitor_allocationalarm_obj_t**) &MP_STATE_VM(active_allocationalarms);
- if (self->next != NULL) {
- self->next->previous = &self->next;
- }
- MP_STATE_VM(active_allocationalarms) = self;
-}
-
-void memorymonitor_allocationalarms_allocation(size_t block_count) {
- memorymonitor_allocationalarm_obj_t* alarm = MP_OBJ_TO_PTR(MP_STATE_VM(active_allocationalarms));
- size_t alert_count = 0;
- while (alarm != NULL) {
- // Hold onto next in case we remove the alarm from the list.
- memorymonitor_allocationalarm_obj_t* next = alarm->next;
- if (block_count >= alarm->minimum_block_count) {
- if (alarm->count > 0) {
- alarm->count--;
- } else {
- // Uncomment the breakpoint below if you want to use a C debugger to figure out the C
- // call stack for an allocation.
- // asm("bkpt");
- // Pause now because we may alert when throwing the exception too.
- common_hal_memorymonitor_allocationalarm_pause(alarm);
- alert_count++;
- }
- }
- alarm = next;
- }
- if (alert_count > 0) {
- mp_raise_memorymonitor_AllocationError(translate("Attempt to allocate %d blocks"), block_count);
- }
-}
-
-void memorymonitor_allocationalarms_reset(void) {
- MP_STATE_VM(active_allocationalarms) = NULL;
-}
diff --git a/shared-module/memorymonitor/AllocationAlarm 2.h b/shared-module/memorymonitor/AllocationAlarm 2.h
deleted file mode 100644
index 172c24f6c..000000000
--- a/shared-module/memorymonitor/AllocationAlarm 2.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * This file is part of the Micro Python project, http://micropython.org/
- *
- * The MIT License (MIT)
- *
- * Copyright (c) 2020 Scott Shawcroft for Adafruit Industries
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#ifndef MICROPY_INCLUDED_SHARED_MODULE_MEMORYMONITOR_ALLOCATIONALARM_H
-#define MICROPY_INCLUDED_SHARED_MODULE_MEMORYMONITOR_ALLOCATIONALARM_H
-
-#include <stdbool.h>
-#include <stdint.h>
-
-#include "py/obj.h"
-
-typedef struct _memorymonitor_allocationalarm_obj_t memorymonitor_allocationalarm_obj_t;
-
-#define ALLOCATION_SIZE_BUCKETS 16
-
-typedef struct _memorymonitor_allocationalarm_obj_t {
- mp_obj_base_t base;
- size_t minimum_block_count;
- mp_int_t count;
- // Store the location that points to us so we can remove ourselves.
- memorymonitor_allocationalarm_obj_t** previous;
- memorymonitor_allocationalarm_obj_t* next;
-} memorymonitor_allocationalarm_obj_t;
-
-void memorymonitor_allocationalarms_allocation(size_t block_count);
-void memorymonitor_allocationalarms_reset(void);
-
-#endif // MICROPY_INCLUDED_SHARED_MODULE_MEMORYMONITOR_ALLOCATIONALARM_H
diff --git a/shared-module/memorymonitor/AllocationSize 2.c b/shared-module/memorymonitor/AllocationSize 2.c
deleted file mode 100644
index c28e65592..000000000
--- a/shared-module/memorymonitor/AllocationSize 2.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * This file is part of the Micro Python project, http://micropython.org/
- *
- * The MIT License (MIT)
- *
- * Copyright (c) 2020 Scott Shawcroft for Adafruit Industries
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#include "shared-bindings/memorymonitor/AllocationSize.h"
-
-#include "py/gc.h"
-#include "py/mpstate.h"
-#include "py/runtime.h"
-
-void common_hal_memorymonitor_allocationsize_construct(memorymonitor_allocationsize_obj_t* self) {
- common_hal_memorymonitor_allocationsize_clear(self);
- self->next = NULL;
- self->previous = NULL;
-}
-
-void common_hal_memorymonitor_allocationsize_pause(memorymonitor_allocationsize_obj_t* self) {
- *self->previous = self->next;
- self->next = NULL;
- self->previous = NULL;
-}
-
-void common_hal_memorymonitor_allocationsize_resume(memorymonitor_allocationsize_obj_t* self) {
- if (self->previous != NULL) {
- mp_raise_RuntimeError(translate("Already running"));
- }
- self->next = MP_STATE_VM(active_allocationsizes);
- self->previous = (memorymonitor_allocationsize_obj_t**) &MP_STATE_VM(active_allocationsizes);
- if (self->next != NULL) {
- self->next->previous = &self->next;
- }
- MP_STATE_VM(active_allocationsizes) = self;
-}
-
-void common_hal_memorymonitor_allocationsize_clear(memorymonitor_allocationsize_obj_t* self) {
- for (size_t i = 0; i < ALLOCATION_SIZE_BUCKETS; i++) {
- self->buckets[i] = 0;
- }
-}
-
-uint16_t common_hal_memorymonitor_allocationsize_get_len(memorymonitor_allocationsize_obj_t* self) {
- return ALLOCATION_SIZE_BUCKETS;
-}
-
-size_t common_hal_memorymonitor_allocationsize_get_bytes_per_block(memorymonitor_allocationsize_obj_t* self) {
- return BYTES_PER_BLOCK;
-}
-
-uint16_t common_hal_memorymonitor_allocationsize_get_item(memorymonitor_allocationsize_obj_t* self, int16_t index) {
- return self->buckets[index];
-}
-
-void memorymonitor_allocationsizes_track_allocation(size_t block_count) {
- memorymonitor_allocationsize_obj_t* as = MP_OBJ_TO_PTR(MP_STATE_VM(active_allocationsizes));
- size_t power_of_two = 0;
- block_count >>= 1;
- while (block_count != 0) {
- power_of_two++;
- block_count >>= 1;
- }
- while (as != NULL) {
- as->buckets[power_of_two]++;
- as = as->next;
- }
-}
-
-void memorymonitor_allocationsizes_reset(void) {
- MP_STATE_VM(active_allocationsizes) = NULL;
-}
diff --git a/shared-module/memorymonitor/AllocationSize 2.h b/shared-module/memorymonitor/AllocationSize 2.h
deleted file mode 100644
index 3baab2213..000000000
--- a/shared-module/memorymonitor/AllocationSize 2.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * This file is part of the Micro Python project, http://micropython.org/
- *
- * The MIT License (MIT)
- *
- * Copyright (c) 2020 Scott Shawcroft for Adafruit Industries
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#ifndef MICROPY_INCLUDED_SHARED_MODULE_MEMORYMONITOR_ALLOCATIONSIZE_H
-#define MICROPY_INCLUDED_SHARED_MODULE_MEMORYMONITOR_ALLOCATIONSIZE_H
-
-#include <stdbool.h>
-#include <stdint.h>
-
-#include "py/obj.h"
-
-typedef struct _memorymonitor_allocationsize_obj_t memorymonitor_allocationsize_obj_t;
-
-#define ALLOCATION_SIZE_BUCKETS 16
-
-typedef struct _memorymonitor_allocationsize_obj_t {
- mp_obj_base_t base;
- uint16_t buckets[ALLOCATION_SIZE_BUCKETS];
- // Store the location that points to us so we can remove ourselves.
- memorymonitor_allocationsize_obj_t** previous;
- memorymonitor_allocationsize_obj_t* next;
- bool paused;
-} memorymonitor_allocationsize_obj_t;
-
-void memorymonitor_allocationsizes_track_allocation(size_t block_count);
-void memorymonitor_allocationsizes_reset(void);
-
-#endif // MICROPY_INCLUDED_SHARED_MODULE_MEMORYMONITOR_ALLOCATIONSIZE_H
diff --git a/shared-module/memorymonitor/__init__ 2.c b/shared-module/memorymonitor/__init__ 2.c
deleted file mode 100644
index 6cb424153..000000000
--- a/shared-module/memorymonitor/__init__ 2.c
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * This file is part of the MicroPython project, http://micropython.org/
- *
- * The MIT License (MIT)
- *
- * Copyright (c) 2020 Scott Shawcroft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#include "shared-module/memorymonitor/__init__.h"
-#include "shared-module/memorymonitor/AllocationAlarm.h"
-#include "shared-module/memorymonitor/AllocationSize.h"
-
-void memorymonitor_track_allocation(size_t block_count) {
- memorymonitor_allocationalarms_allocation(block_count);
- memorymonitor_allocationsizes_track_allocation(block_count);
-}
-
-void memorymonitor_reset(void) {
- memorymonitor_allocationalarms_reset();
- memorymonitor_allocationsizes_reset();
-}
diff --git a/shared-module/memorymonitor/__init__ 2.h b/shared-module/memorymonitor/__init__ 2.h
deleted file mode 100644
index f47f6434b..000000000
--- a/shared-module/memorymonitor/__init__ 2.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * This file is part of the MicroPython project, http://micropython.org/
- *
- * The MIT License (MIT)
- *
- * Copyright (c) 2016 Scott Shawcroft for Adafruit Industries
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#ifndef MICROPY_INCLUDED_MEMORYMONITOR___INIT___H
-#define MICROPY_INCLUDED_MEMORYMONITOR___INIT___H
-
-#include <stddef.h>
-
-void memorymonitor_track_allocation(size_t block_count);
-void memorymonitor_reset(void);
-
-#endif // MICROPY_INCLUDED_MEMORYMONITOR___INIT___H