Comments (5)
How did you find it? Do you have a source reproducer?
Original comment by [email protected]
on 7 Feb 2012 at 5:48
from address-sanitizer.
I was just debugging a (non-existing) hang in Chrome.
I have a repro of ~300 lines that produces almost the same code:
1b7: 8b 44 24 1c mov 0x1c(%esp),%eax
1bb: 8d 80 69 35 02 00 lea 0x23569(%eax),%eax
1c1: 89 c1 mov %eax,%ecx
1c3: c1 e9 03 shr $0x3,%ecx
1c6: 8a 89 00 00 00 20 mov 0x20000000(%ecx),%cl
1cc: 8b 94 24 c0 01 00 00 mov 0x1c0(%esp),%edx
, which corresponds to the following assembly:
Ltmp14:
LBB0_3: ## %if.else
##DEBUG_VALUE: PostMainMessageLoopStart:this <- EBP+4294967295
.loc 2 214 0 ## browser.ii:214:0
movl %esi, %eax
shrl $3, %eax
movb 536870912(%eax), %al
testb %al, %al
jne LBB0_32
LBB0_4:
##DEBUG_VALUE: PostMainMessageLoopStart:this <- EBP+4294967295
movl 28(%esp), %eax ## 4-byte Reload
leal __ZN12_GLOBAL__N_123g_shutdown_pipe_read_fdE-L0$pb(%eax), %eax
movl %eax, %ecx
shrl $3, %ecx
movb 536870912(%ecx), %cl
movl 448(%esp), %edx
Ltmp15:
##DEBUG_VALUE: ShutdownDetector:shutdown_fd <- EDX+0
##DEBUG_VALUE: ShutdownDetector:shutdown_fd <- EDX+0
##DEBUG_VALUE: CheckNEImpl:v1 <- EDX+0
##DEBUG_VALUE: CheckNEImpl:v1 <- EDX+0
testb %cl, %cl
je LBB0_6
But I'm not completely sure now that "movb 536870912(%ecx), %cl" and "movl
448(%esp), %edx" access the shadow and the client memory for the same address.
Original comment by [email protected]
on 8 Feb 2012 at 9:20
from address-sanitizer.
So, there is not bug here, right?
Original comment by [email protected]
on 24 Feb 2012 at 10:56
- Changed state: Invalid
from address-sanitizer.
Not sure yet. Let us leave this as an invalid bug, but keep in mind that we may
miss a bug someday because of this.
Original comment by [email protected]
on 28 Feb 2012 at 11:04
from address-sanitizer.
Adding Project:AddressSanitizer as part of GitHub migration.
Original comment by [email protected]
on 30 Jul 2015 at 9:12
- Added labels: ProjectAddressSanitizer
from address-sanitizer.
Related Issues (20)
- ASan shared runtime library on Android re-exports the entire libgcc interface HOT 2
- sigsegv in basic block tracer HOT 3
- Compiling with AddressSanitizer using gcc ≥4.9 breaks printng some variables in gdb on Linux HOT 7
- AddressSanitizer: while reporting a bug found another one. Ignoring. HOT 3
- [android] system property access from native code is going away HOT 2
- Link libasan with -z interpose on Linux HOT 3
- ASan is unable to link TLS arrays HOT 3
- pointer not owned error when calling malloc_usable_size() on array of structs with destructors HOT 4
- Support Android in asan_symbolize HOT 3
- thread_stats.malloced_by_size[class_id] overflow in asan_allocator.cc HOT 4
- Crash on ODR between instrumented and non-instrumented libraries HOT 4
- LSan doesn't work with empty suppressions list HOT 6
- Improve wild-free detection HOT 1
- Please tell us where you are moving due to Google Code shutdown HOT 3
- -fsanitize=address should probably imply -Bsymbolic HOT 2
- Enable LSAN support for 32bit architecture HOT 3
- support relative paths in backlist files HOT 1
- chdir breaks symbolization of dynamic libraries
- leak is only reported about 1/2 of runs
- gcc-asan doesn't work on android/arm32 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from address-sanitizer.