diff options
author | ygribov <ygribov@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-11-07 12:04:45 +0000 |
---|---|---|
committer | ygribov <ygribov@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-11-07 12:04:45 +0000 |
commit | 4102b43a8d625eb0efc4432457b4946881599dbf (patch) | |
tree | 7ec964dd23728fc9025e02aa3e22efd7c4fc6eaf /gcc/asan.c | |
parent | ce071c3cdd9db5272dd1343957403e7963ff9d94 (diff) | |
download | gcc-4102b43a8d625eb0efc4432457b4946881599dbf.tar.gz |
Allow integer literals as addresses in instrumented builtins.
gcc/
PR sanitizer/59029
* gcc/asan.c (get_mem_refs_of_builtin_call): Allow
integer literals as addresses in instrumented builtins.
gcc-testsuite/
PR sanitizer/59029
* c-c++-common/asan/pr59029.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204508 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/asan.c')
-rw-r--r-- | gcc/asan.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/asan.c b/gcc/asan.c index fdca37755a9..950d332c0d5 100644 --- a/gcc/asan.c +++ b/gcc/asan.c @@ -715,7 +715,7 @@ get_mem_refs_of_builtin_call (const gimple call, instrument_derefs. */ if (TREE_CODE (dest) == ADDR_EXPR) dest = TREE_OPERAND (dest, 0); - else if (TREE_CODE (dest) == SSA_NAME) + else if (TREE_CODE (dest) == SSA_NAME || TREE_CODE (dest) == INTEGER_CST) dest = build2 (MEM_REF, TREE_TYPE (TREE_TYPE (dest)), dest, build_int_cst (TREE_TYPE (dest), 0)); else |