[Bug tree-optimization/15484] [tree-ssa] bool and short function arguments promoted to int

2008-11-20 Thread dann at godzilla dot ics dot uci dot edu


--- Comment #6 from dann at godzilla dot ics dot uci dot edu  2008-11-20 
23:27 ---
Still happens in 4.4. 


-- 

dann at godzilla dot ics dot uci dot edu changed:

   What|Removed |Added

   Keywords||memory-hog


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15484



[Bug tree-optimization/15484] [tree-ssa] bool and short function arguments promoted to int

2008-11-20 Thread pinskia at gcc dot gnu dot org


--- Comment #7 from pinskia at gcc dot gnu dot org  2008-11-20 23:35 ---
(In reply to comment #6)
 Still happens in 4.4. 

But as mentioned this is not really a bug.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||WONTFIX


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15484



[Bug tree-optimization/15484] [tree-ssa] bool and short function arguments promoted to int

2005-06-02 Thread dnovillo at gcc dot gnu dot org

--- Additional Comments From dnovillo at gcc dot gnu dot org  2005-06-02 
18:44 ---

How is this related to VRP at all?  Removing dependency on 18373.

-- 
   What|Removed |Added

  BugsThisDependsOn|18373   |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15484


[Bug tree-optimization/15484] [tree-ssa] bool and short function arguments promoted to int

2005-05-16 Thread rguenth at gcc dot gnu dot org

--- Additional Comments From rguenth at gcc dot gnu dot org  2005-05-16 
13:55 ---
Maybe the same problem results in

static inline bool wrap(bool f) { return f; }
bool bar(bool f)
{
return wrap(f);
}

producing

  return (int) (bool) (int) (bool) (int) f;

(and more, if you add another wrap())

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15484


[Bug tree-optimization/15484] [tree-ssa] bool and short function arguments promoted to int

2004-12-28 Thread dann at godzilla dot ics dot uci dot edu

--- Additional Comments From dann at godzilla dot ics dot uci dot edu  
2004-12-29 01:33 ---
(In reply to comment #2)
 The underlying ABI might require short  bool arguments to be passed as int. 
 Some do, some don't.  Anyway, that's an argument marshalling issue, which is 
 not
 currently addressed at the tree level.
 
 The cast to int has been inserted by the front end, I think C requires that.
 
 This is a VRP issue, not an argument marshalling one.

A discussion about this is at:

http://gcc.gnu.org/ml/gcc/2004-05/msg00752.html

in that thread Jim Wilson has some more explanations about what is going on.

A patch that seems to work is also in that mail, but I won't have time to 
properly test it to try to get it committed anytime soon. If someone wants to
play with this, it would be great.

The problem is that the C and C++ front-ends generate casts to int when
c_promoting_integer_type_p returns true. Those casts are generated too early 
(if they are needed at all, and they might not be needed). Iff the casts are
needed they should be when lowering to RTL.



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15484


[Bug tree-optimization/15484] [tree-ssa] bool and short function arguments promoted to int

2004-11-17 Thread nathan at gcc dot gnu dot org

--- Additional Comments From nathan at gcc dot gnu dot org  2004-11-17 
13:33 ---
The underlying ABI might require short  bool arguments to be passed as int. 
Some do, some don't.  Anyway, that's an argument marshalling issue, which is not
currently addressed at the tree level.

The cast to int has been inserted by the front end, I think C requires that.

This is a VRP issue, not an argument marshalling one.

-- 
   What|Removed |Added

  BugsThisDependsOn||18373


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15484