1. 30 Sep, 2016 1 commit
    • Vineet Gupta's avatar
      ARC: dw2 unwind: enable cfi pseudo ops in string lib · 86effd0d
      Vineet Gupta authored
      This uses a new set of annoations viz. ENTRY_CFI/END_CFI to enabel cfi
      ops generation.
      
      Note that we didn't change the normal ENTRY/EXIT as we don't actually
      want unwind info in the trap/exception/interrutp handlers which use
      these, as unwinder then gets confused (it keeps recursing vs. stopping).
      Semantically these are leaf routines and unwinding should stop when it
      hits those routines.
      
      Before
      ------
      
          28.52%     1.19%          9929  hackbench  libuClibc-1.0.17.so   [.] __write_nocancel
                  |
                  ---__write_nocancel
                     |--8.95%--EV_Trap
                     |           --8.25%--sys_write
                     |                     |--3.93%--sock_write_iter
           ...
                     |--2.62%--memset   <==== [LEAF entry as no unwind info]
                               ^^^^^^
      
      After
      -----
      
          29.46%     1.24%         13622  hackbench  libuClibc-1.0.17.so   [.] __write_nocancel
                  |
                  ---__write_nocancel
                     |--9.31%--EV_Trap
                     |           --8.62%--sys_write
                     |                     |--4.17%--sock_write_iter
           ...
                     |--6.19%--sys_write
                     |           --6.19%--sock_write_iter
                     |                     unix_stream_sendmsg
                     |                     |--1.62%--sock_alloc_send_pskb
                     |                     |--0.89%--sock_def_readable
                     |                     |--0.88%--_raw_spin_unlock_irqrestore
                     |                     |--0.69%--memset
                     |                     |         ^^^^^^     <==== [now in proper callframe]
                     |                     |
                     |                      --0.52%--skb_copy_datagram_from_iter
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      86effd0d
  2. 03 Nov, 2015 1 commit
  3. 20 Jul, 2015 2 commits
  4. 22 Jun, 2015 2 commits
  5. 26 Mar, 2014 1 commit
  6. 24 Aug, 2013 1 commit
  7. 11 Feb, 2013 2 commits
    • Vineet Gupta's avatar
      ARC: String library · 5210d1e6
      Vineet Gupta authored
      Hand optimised asm code for ARC700 pipeline.
      Originally written/optimized by Joern Rennecke
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      Cc: Joern Rennecke <joern.rennecke@embecosm.com>
      5210d1e6
    • Vineet Gupta's avatar
      ARC: Build system: Makefiles, Kconfig, Linker script · cfdbc2e1
      Vineet Gupta authored
      Arnd in his review pointed out that arch Kconfig organisation has several
      deficiencies:
      
      * Build time entries for things which can be runtime extracted from DT
        (e.g. SDRAM size, core clk frequency..)
      * Not multi-platform-image-build friendly (choice .. endchoice constructs)
      * cpu variants support (750/770) is exclusive.
      
      The first 2 have been fixed in subsequent patches.
      Due to the nature of the 750 and 770, it is not possible to build for
      both together, w/o special runtime glue code which would hurt
      performance.
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Sam Ravnborg <sam@ravnborg.org>
      Acked-by: default avatarSam Ravnborg <sam@ravnborg.org>
      cfdbc2e1