-
Notifications
You must be signed in to change notification settings - Fork 3.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LFS evaluation version -- second release #2301
Merged
Merged
Changes from 4 commits
Commits
Show all changes
11 commits
Select commit
Hold shift + click to select a range
3d3eebf
Turn of x bit on some non-executable source files
TerryE 4141e69
Move luac.cross build into standard make hierarchy
TerryE e00d927
Tweaks to the Remote GDB interface to make it usable
TerryE 4ae52c2
Alpha working wersion for third party evaluation
TerryE 88bd9e0
LFS patch updates following review
TerryE 6db7414
Merge branch 'dev' into dev-LFS
TerryE 4f7af45
corrections to dev merge
TerryE 4f21224
LFS patch updates following review II and testing
TerryE 2ab061f
merge current dev to resolve update conflcts in node.c
TerryE 17ae6e2
Fix Travis build failure
TerryE a3c2f48
Fix makefile whitespace as per dnc40085 review
TerryE File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,158 @@ | ||
# | ||
# This is very much a work in progress to show how we can use macros to make the | ||
# GDB interface a lot more useable. For example the next / step commands only | ||
# work if the stepper doesn't leave the current scope. Beyond that you have a | ||
# single hardware breakpoint which can be used as an hb or a wa. You have to | ||
# remember to delete the previous one, so the br macro does this for you. | ||
# | ||
file app/.output/eagle/debug/image/eagle.app.v6.out | ||
#set remotedebug 1 | ||
set remotelogfile gdb_rsp_logfile.txt | ||
set serial baud 115200 | ||
set remote hardware-breakpoint-limit 1 | ||
set remote hardware-watchpoint-limit 1 | ||
#set debug xtensa 4 | ||
target remote /dev/ttyUSB0 | ||
|
||
set confirm off | ||
set print null-stop | ||
define br | ||
d | ||
hb $arg0 | ||
end | ||
set pagination off | ||
|
||
define prTS | ||
set $o = &(((TString *)($arg0))->tsv) | ||
printf "Common header: next = %p, marked = 0x%01x\n", $o->next, $o->marked | ||
printf "String: hash = 0x%08x, len = %u : %s\n", $o->hash, $o->len, (char *)(&$o[1]) | ||
end | ||
define prTnodes | ||
set $o = (Table *)($arg0) | ||
set $n = 1<<($o->lsizenode) | ||
set $i = 0 | ||
while $i < $n | ||
set $nd = ($o->node) + $i | ||
if $nd->i_key.nk.tt && $nd->i_val.tt | ||
if $nd->i_key.nk.tt == 6 | ||
printf "%4u: %s %2i\n", $i, $nd->i_key.nk.tt , $nd->i_val.tt else | ||
printf "%4u: %2i %2i\n", $i, $nd->i_key.nk.tt , $nd->i_val.tt | ||
end | ||
end | ||
set $i = $i +1 | ||
end | ||
end | ||
define prTV | ||
if $arg0 | ||
set $type = ($arg0).tt | ||
set $val = ($arg0).value | ||
|
||
if $type == 0 | ||
# NIL | ||
printf "Nil\n" | ||
end | ||
if $type == 1 | ||
# Boolean | ||
printf "Boolean: %u\n", $val.n | ||
end | ||
if $type == 2 | ||
# ROTable | ||
printf "ROTable: %p\n", $val.p | ||
end | ||
if $type == 3 | ||
# Light Function | ||
printf "Light Func: %p\n", $val.p | ||
end | ||
if $type == 4 | ||
# Light User Data | ||
printf "Light Udata: %p\n", $val.p | ||
end | ||
if $type == 5 | ||
# Number | ||
printf "Number: %u\n", $val.n | ||
end | ||
if $type == 6 | ||
prTS $arg0 | ||
end | ||
if $type == 7 | ||
# Table | ||
set $o = &($val->gc.h) | ||
printf "Common header: next = %p, marked = 0x%01x\n", $o->next, $o->marked | ||
printf "Nodes: %4i %p\n", 2<<($o->lsizenode), $o->nodes | ||
printf "Arry: %4i %p\n", $o->sizearray, $o->array | ||
end | ||
if $type == 8 | ||
# Function | ||
set $o = &($val->gc.cl.c) | ||
printf "Common header: next = %p, marked = 0x%01x\n", $o->next, $o->marked | ||
if $o->isC == 0 | ||
set $o = &($val->gc.cl.l) | ||
printf "LClosure: nupvalues = %u, gclist = %p, env = %p, p = %p\n", $o->nupvalues, $o->gclist, $o->env, $o->p | ||
else | ||
printf "CClosure: nupvalues = %u, gclist = %p, env = %p, f = %p\np", $o->nupvalues, $o->gclist, $o->env, $o->f | ||
end | ||
end | ||
if $type == 9 | ||
# UserData | ||
end | ||
if $type == 10 | ||
# Thread | ||
end | ||
end | ||
end | ||
|
||
define prL | ||
if L > 0 | ||
printf " stack: %u\n", L->top-L->base | ||
printf " hooking: %u, %u, %u, %u, %p\n", L->hookmask, L->allowhook, L->basehookcount, L->hookcount, L->hook | ||
end | ||
end | ||
|
||
define dumpstrt | ||
set $st = $arg0 | ||
set $i = 0 | ||
while $i< $st->size | ||
set $o = &(((TString *)($st->hash[$i]))->tsv) | ||
while $o | ||
if $o->next | ||
printf "Slot: %5i %p %p %08x %02x %4u", $i, $o, $o->next, $o->hash, $o->marked, $o->len | ||
else | ||
printf "Slot: %5i %p %08x %02x %4u", $i, $o, $o->hash, $o->marked, $o->len | ||
end | ||
if $o->marked & 0x80 | ||
printf "* %s\n", *(char **)($o+1) | ||
else | ||
printf " %s\n", (char *)($o+1) | ||
end | ||
set $o = &(((TString *)($o->next))->tsv) | ||
end | ||
set $i = $i + 1 | ||
end | ||
end | ||
|
||
define dumpRAMstrt | ||
dumpstrt &(L->l_G->strt) | ||
end | ||
|
||
define dumpROstrt | ||
dumpstrt &(L->l_G->ROstrt) | ||
end | ||
|
||
define graylist | ||
set $n = $arg0 | ||
while $n | ||
printf "%p %2u %02X\n",$n, $n->gch.tt, $n->gch.marked | ||
set $n=$n->gch.next | ||
end | ||
end | ||
|
||
define prPC | ||
printf "Excuting instruction %i: %08x\n", (pc - cl->p->code)+1-1, i | ||
end | ||
|
||
define prT | ||
print *(Table*)($arg0) | ||
end | ||
set history save on | ||
set history size 1000 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -12,7 +12,7 @@ | |
# a generated lib/image xxx.a () | ||
# | ||
ifndef PDIR | ||
GEN_LIBS = libdhtlib.a | ||
GEN_LIBS = libdht.a | ||
endif | ||
|
||
|
||
|
File renamed without changes.
File renamed without changes.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suspect that the u8g stuff doesn't work right -- see the current travis build failure
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can confirm, linker fails with lots of undefined references to u8g functions when
LUA_USE_MODULES_U8G
is defined.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@devsaurus Arnim, re the warning: this has been there since eLua days, so this is a case of no change. The NodeMCU make only works under the Xtensa toolchain on Linux, so this is a global issue with our build. Maybe we should do an OS detect and abort on anything else, But this isn't an issue introduced by this patch.
@pjsg, Agreed and this needs fixing, so I'll have a look at the Travis build and work out what is going wrong, but the assumption in the normal make is that you enable a given module by setting the corresponding define in
user_modulea.h
. This Travis make seems to be overriding this by a backdoor and forcing all modules into a link, despite the settings of these defines. This is a QA artiffact as such a biuld will never be capable of being downloaded onto a real ESP module. It isn't a real-life issue but one of the way the Travis build is configured. I just need to mirror this short circuit in the make and detect a Travis build and similarly force the build of all of the associated subdirs..There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll take a look at this and fix. :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My tweak to the magic works fine but
is dying with "Not enough space: fatal error" Why? swapping the -S 4mb for -c 0x8000 works fine.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, I've bottomed this. The underlying issue is that most of these adjunct directories have the same root name as the module, e.g.
coap
usescoap
, etc. The two u?g modules don't follow this pattern asu8g
usesu8glib
and dittoucg
. I just had to add a couple of extra magic lines to handle this second case.