diff options
author | Jakub Jelinek <jakub@redhat.com> | 2023-12-21 11:20:17 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2023-12-21 11:21:40 +0100 |
commit | b99353c33f09201e3cee34387cee6cdccbe31660 (patch) | |
tree | 9acffffc50bb1f87568af1fbc2f74056b88ffaa3 | |
parent | 803d222e533efbc385411d4b5a2d0ec0551b9f16 (diff) | |
download | gcc-b99353c33f09201e3cee34387cee6cdccbe31660.zip gcc-b99353c33f09201e3cee34387cee6cdccbe31660.tar.gz gcc-b99353c33f09201e3cee34387cee6cdccbe31660.tar.bz2 |
Fix -Wcalloc-transposed-args warning in collect2.cc and work around -Walloc-size warning
This fixes one warning and works around another one where we allocate less than
what we cast to.
2023-12-21 Jakub Jelinek <jakub@redhat.com>
* gimple-fold.cc (maybe_fold_comparisons_from_match_pd):
Use unsigned char buffers for lhs1 and lhs2 instead of allocating
them through XALLOCA.
* collect2.cc (maybe_run_lto_and_relink): Swap xcalloc arguments.
-rw-r--r-- | gcc/collect2.cc | 2 | ||||
-rw-r--r-- | gcc/gimple-fold.cc | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/gcc/collect2.cc b/gcc/collect2.cc index c943f9f..70e6ca9 100644 --- a/gcc/collect2.cc +++ b/gcc/collect2.cc @@ -622,7 +622,7 @@ maybe_run_lto_and_relink (char **lto_ld_argv, char **object_lst, LTO object replaced by all partitions and other LTO objects removed. */ - lto_c_argv = (char **) xcalloc (sizeof (char *), num_lto_c_args); + lto_c_argv = (char **) xcalloc (num_lto_c_args, sizeof (char *)); lto_c_ptr = CONST_CAST2 (const char **, char **, lto_c_argv); *lto_c_ptr++ = lto_wrapper; diff --git a/gcc/gimple-fold.cc b/gcc/gimple-fold.cc index cb4b572..2c8848f 100644 --- a/gcc/gimple-fold.cc +++ b/gcc/gimple-fold.cc @@ -7086,14 +7086,16 @@ maybe_fold_comparisons_from_match_pd (tree type, enum tree_code code, gimple_set_bb (stmt2, NULL); /* Allocate SSA names(lhs1) on the stack. */ - tree lhs1 = (tree)XALLOCA (tree_ssa_name); + alignas (tree_node) unsigned char lhs1buf[sizeof (tree_ssa_name)]; + tree lhs1 = (tree) &lhs1buf[0]; memset (lhs1, 0, sizeof (tree_ssa_name)); TREE_SET_CODE (lhs1, SSA_NAME); TREE_TYPE (lhs1) = type; init_ssa_name_imm_use (lhs1); /* Allocate SSA names(lhs2) on the stack. */ - tree lhs2 = (tree)XALLOCA (tree_ssa_name); + alignas (tree_node) unsigned char lhs2buf[sizeof (tree_ssa_name)]; + tree lhs2 = (tree) &lhs2buf[0]; memset (lhs2, 0, sizeof (tree_ssa_name)); TREE_SET_CODE (lhs2, SSA_NAME); TREE_TYPE (lhs2) = type; |