re PR sanitizer/63845 (c-c++-common/asan/bitfield-[12345].c fails on i?86 -with -fpic)
gcc/ PR sanitizer/63845 * function.c (assign_parms): Move init of pic_offset_table_rtx from here to... * cfgexpand.c (expand_used_vars): ...here. gcc/testsuite/ PR sanitizer/63845 * gcc.dg/asan/pr63845.c: New test. From-SVN: r217825
This commit is contained in:
parent
1be0e58d30
commit
8f51aa6b26
@ -1,3 +1,10 @@
|
||||
2014-11-20 Igor Zamyatin <igor.zamyatin@intel.com>
|
||||
|
||||
PR sanitizer/63845
|
||||
* function.c (assign_parms): Move init of pic_offset_table_rtx
|
||||
from here to...
|
||||
* cfgexpand.c (expand_used_vars): ...here.
|
||||
|
||||
2014-11-19 Jan Hubicka <hubicka@ucw.cz>
|
||||
|
||||
* tree.c (free_lang_data_in_type): If BINFO has no important
|
||||
|
@ -1722,6 +1722,9 @@ expand_used_vars (void)
|
||||
|
||||
init_vars_expansion ();
|
||||
|
||||
if (targetm.use_pseudo_pic_reg ())
|
||||
pic_offset_table_rtx = gen_reg_rtx (Pmode);
|
||||
|
||||
hash_map<tree, tree> ssa_name_decls;
|
||||
for (i = 0; i < SA.map->num_partitions; i++)
|
||||
{
|
||||
|
@ -3679,11 +3679,6 @@ assign_parms (tree fndecl)
|
||||
|
||||
fnargs.release ();
|
||||
|
||||
/* Initialize pic_offset_table_rtx with a pseudo register
|
||||
if required. */
|
||||
if (targetm.use_pseudo_pic_reg ())
|
||||
pic_offset_table_rtx = gen_reg_rtx (Pmode);
|
||||
|
||||
/* Output all parameter conversion instructions (possibly including calls)
|
||||
now that all parameters have been copied out of hard registers. */
|
||||
emit_insn (all.first_conversion_insn);
|
||||
|
@ -1,3 +1,8 @@
|
||||
2014-11-20 Igor Zamyatin <igor.zamyatin@intel.com>
|
||||
|
||||
PR sanitizer/63845
|
||||
* gcc.dg/asan/pr63845.c: New test.
|
||||
|
||||
2014-11-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
|
||||
|
||||
PR sanitizer/63939
|
||||
|
17
gcc/testsuite/gcc.dg/asan/pr63845.c
Normal file
17
gcc/testsuite/gcc.dg/asan/pr63845.c
Normal file
@ -0,0 +1,17 @@
|
||||
/* PR sanitizer/63845 */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-fPIC" { target fpic } } */
|
||||
|
||||
int __attribute__ ((noinline, noclone))
|
||||
foo (void *p)
|
||||
{
|
||||
return *(int*)p;
|
||||
}
|
||||
|
||||
int main ()
|
||||
{
|
||||
char a = 0;
|
||||
foo (&a);
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user