Support latest PXT with GC (#1798)

* Enable gc and basic compilation fixes

* Add missing GC stuff

* Set microbit-dal version

* Disable jacdac in servo

* UTF fixes

* TS build fixes

* Auto-generated files update

* We only seem to have that much

* Fix for new new compiler

* Account for uninitialized scheduler

* Intialize memory allocator

* bump references

* updated package

* Set image tag, requires https://github.com/Microsoft/pxt/pull/5262

* updated project summaries

* Fixing block tests
This commit is contained in:
Michał Moskal
2019-02-21 15:41:32 -08:00
committed by GitHub
parent 040b699a27
commit 71d98822ae
26 changed files with 330 additions and 124 deletions

View File

@ -17,9 +17,11 @@ class RefMImage : public RefObject {
void makeWritable();
static void destroy(RefMImage *map);
static void print(RefMImage *map);
static void scan(RefMImage *t);
static unsigned gcsize(RefMImage *t);
};
#define MSTR(s) ManagedString((s)->data, (s)->length)
#define MSTR(s) ManagedString((s)->getUTF8Data(), (s)->getUTF8Size())
static inline String PSTR(ManagedString s) {
return mkString(s.toCharArray(), s.length());
@ -28,7 +30,7 @@ static inline String PSTR(ManagedString s) {
typedef uint32_t ImageLiteral_;
static inline ImageData *imageBytes(ImageLiteral_ lit) {
return (ImageData*)ptrOfLiteral(lit);
return (ImageData *)lit;
}
typedef RefMImage *Image;
@ -39,16 +41,20 @@ extern MicroBitEvent lastEvent;
MicroBitPin *getPin(int id);
static inline int min_(int a, int b) {
if (a < b) return a;
else return b;
if (a < b)
return a;
else
return b;
}
static inline int max_(int a, int b) {
if (a > b) return a;
else return b;
if (a > b)
return a;
else
return b;
}
}
} // namespace pxt
using namespace pxt;