svadev AT lists.siebelschool.illinois.edu
Subject: Svadev mailing list
List archive
- From: John Criswell <criswell AT illinois.edu>
- To: Baozeng <sploving1 AT gmail.com>
- Cc: svadev AT cs.illinois.edu
- Subject: Re: [svadev] BBC test issue
- Date: Wed, 13 Jun 2012 14:16:45 -0500
- List-archive: <http://lists.cs.uiuc.edu/pipermail/svadev>
- List-id: <svadev.cs.uiuc.edu>
On 6/13/12 8:37 AM, Baozeng wrote:
Hello,
I use current BBC implementation to test an example (buffer.c):
#include<stdio.h>
#include<stdlib.h>
int main (int argc, char ** argv) {
char array[17];
return array[17];
}
$ clang -g -fmemsafety -bbc buffer.c -o mytest
-L/home/sploving/llvm/projects/safecode/Debug/lib
$ ./mytest
It output this:
0xbfd00b9b, 0xbfd00b80, 17 Not aligned
This related code is in the function __internal_register in
BaggyBoundsCheck.cpp:
if(Source1 != Source) {
printf("%p, %p, %u Not aligned\n", (void*)Source, (void*)Source1,
NumBytes);
assert(0&& "Memory objects not aligned");
}
I think the problem is that the stack object being registered isn't aligned on a power-of-two boundary like it should be.
Does the transform that does that work yet? If so, then maybe something else is causing the problem (like the poolargvregister() function).
-- John T.
Source1 should be equal with Source if Source satisfy some conditions.
What conditions should Source satisfy? Maybe this is related to pool
handler? How to fix this?
- [svadev] BBC test issue, Baozeng, 06/13/2012
- Re: [svadev] BBC test issue, John Criswell, 06/13/2012
- Re: [svadev] BBC test issue, Baozeng, 06/14/2012
- Re: [svadev] BBC test issue, John Criswell, 06/14/2012
- Re: [svadev] BBC test issue, Baozeng, 06/14/2012
- Re: [svadev] BBC test issue, John Criswell, 06/13/2012
Archive powered by MHonArc 2.6.16.