Workshop on Essential Abstractions in GCC

2011-05-23 Thread GCC Resource Center
 Workshop on Essential Abstractions in GCC, 2011
 (http://www.cse.iitb.ac.in/grc/gcc-workshop-11)
 ---

Organized by: GCC Resource Center (http://www.cse.iitb.ac.in/grc).
Venue:Department of Computer Science and Engineering,
  IIT Bombay (http://www.cse.iitb.ac.in).
Dates:30 June to 3 July (Thursday to Sunday) 2011.
Last date of
registration: 31 May 2011

---

Our apologies if

- you have received multiple copies of this notification, or
- if this notification has reached you erroneously.

Please forward this to people who you think might be interested.

GCC Resource Center Team





[GSOC] how to give arguments to a simple checks plugin?

2011-05-23 Thread Piervit
Hello,

the official starting date for the GSOC coding is today. My project
(http://pvittet.com/GSOC/GSOC.pdf) is to code a plugin which allows
the user to make some simple checks (such as monitoring that a call to
pthread_mutex_lock() is followed by a test on pthread_mutex_unlock() on
the same mutex in the same function) and to displays resulting
warnings.

It is important to think about how the user can transmit arguments to
the plugin, I see three possibilities:

* Using pragma informations in the code:
  o pro:
  It might help to solve name mangling problems
  (http://en.wikipedia.org/wiki/Name_mangling) 
  o cons:
  You have to modify the source code to check
  something, checks are not meant to be easily changed.
 
* Putting them as a list of arguments:
  o pro:
  Easily editable by the user.
  o cons:
  Possible mangle problem if his code is not C language
  (we can't expect the user to know the mangle
  name of the function he wants to check).
  Arguments list might be long.

* Putting them in a separate file:
  o pro:
  Easily editable by the user. 
  o cons:
  Possible mangle problem is it is not C language (we
  can't expect the user to know the mangle name of
  the function he wants to check). 


So I would like to know which possibility you think to be the best ? 
At first I thought to use a separate file, but the mangling problem has
to be taken in account. I guess it heavily depends of how we wants the
plugin to be use (list of arguments is good for a quick try without
much real use, pragma would be more serious but also requires more
willingness from the user).

Thanks!

Pierre Vittet




RE: X32 project status update

2011-05-23 Thread Anvin, H Peter
The eventual goal is to merge it with the x86-64 syscall table, although we're 
still working out exactly where we can do it.

-hpa

-Original Message-
From: Arnd Bergmann [mailto:a...@arndb.de] 
Sent: Saturday, May 21, 2011 8:28
To: H.J. Lu
Cc: GCC Development; GNU C Library; LKML; x32-...@googlegroups.com; Anvin, H 
Peter
Subject: Re: X32 project status update

On Saturday 21 May 2011 17:01:33 H.J. Lu wrote:
> This is the x32 project status update:
> 
> https://sites.google.com/site/x32abi/
> 

I've had another look at the kernel patch. It basically
looks all good, but the system call table appears to
diverge from the x86_64 list for no (documented) reason,
in the calls above 302. Is that intentional?

I can see why you might want to keep the numbers identical,
but if they are already different, why not use the generic
system call table from asm-generic/unistd.h for the new
ABI?

Arnd


Deprecating mips-openbsd

2011-05-23 Thread Richard Sandiford
According to:

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

mips-openbsd does not build in 4.6.  I haven't seen any activity
on this port for years.  Would anyone object to its deprecation?

Richard


Re: mips-elf-gcc -fno-delayed-branch problem

2011-05-23 Thread Toshi Morita
The -O1 sounds like a reasonable choice. Thanks for looking at the problem.

Toshi

--- On Sat, 5/21/11, Richard Sandiford  wrote:

> From: Richard Sandiford 
> Subject: Re: mips-elf-gcc -fno-delayed-branch problem
> To: "Toshi Morita" 
> Cc: gcc@gcc.gnu.org
> Date: Saturday, May 21, 2011, 12:37 AM
> Toshi Morita 
> writes:
> > Maybe GAS could recognize -fno-delayed-branch to
> selectively disable
> > branch slot filling?
> 
> I'd agree if it was -mno-delayed-branch.  I think -f*
> options are
> generally compiler options, while -m* options are target
> options that
> could in principle be passed down to either the assembler
> or the linker.
> 
> > Is there a list of optimizations performed by MIPS GAS
> listed somewhere?
> > It would be nice if these could be selectively
> enabled.
> 
> The only other optimisation (if it can even be called that)
> is increased
> accuracy regarding nop insertion.  Suppose we have
> something like:
> 
>     .text
>     lw    $4,foo
>     addiu    $5,$5,1
>     jr    $31
>     .data
> foo:
>     .word    1
> 
> When GAS sees the LW, it doesn't know whether the LW should
> use a
> HI/LO pair or a GP-relative access.  It therefore
> creates a variant
> "frag" that describes both possibilities.  As far as
> GAS is concerned,
> the following ADDIU starts a new subblock of code.
> 
> With -Wa,-O0, GAS doesn't try to handle dependencies
> between these subblocks,
> and just assumes the worst.  So if you assemble with
> -mips1, GAS has to
> assume that the next subblock after the LW might use $4
> straight away,
> and that a nop is needed:
> 
>  <.text>:
>    0:   3c04   
>     lui     a0,0x0
>                
>         0: R_MIPS_HI16  .data
>    4:   8c84   
>     lw      a0,0(a0)
>                
>         4: R_MIPS_LO16  .data
>    8:      
>     nop
>    c:   24a50001   
>     addiu   a1,a1,1
>   10:   03e8     
>   jr      ra
>   14:        
>   nop
> 
> At -Wa,-O1 and above it does the sensible thing:
> 
>  <.text>:
>    0:   3c04   
>     lui     a0,0x0
>                
>         0: R_MIPS_HI16  .data
>    4:   8c84   
>     lw      a0,0(a0)
>                
>         4: R_MIPS_LO16  .data
>    8:   24a50001   
>     addiu   a1,a1,1
>    c:   03e8   
>     jr      ra
>   10:        
>   nop
> 
> TBH, I think the cases where you'd want the -O0 behaviour
> are
> vanishingly rare.  It does in principle need less
> memory, and does
> in principle assemble slightly quicker, but I don't think
> anyone would
> notice unless they looked hard.
> 
> So -Wa,-O1 is better than the -Wa,-O0 that I mentioned
> previously.
> 
> Richard
>