Skip to content
  1. Apr 02, 2007
  2. Apr 01, 2007
    • Chris Lattner's avatar
      simplify this code, make it work for ap ints · c3eeb428
      Chris Lattner authored
      llvm-svn: 35561
      c3eeb428
    • Chris Lattner's avatar
      fix breakage from last night, simplify code. · 59a6fa7a
      Chris Lattner authored
      llvm-svn: 35560
      59a6fa7a
    • Chris Lattner's avatar
      gcc 3.4.4 is known-bad on x86-64 · 489ad331
      Chris Lattner authored
      llvm-svn: 35559
      489ad331
    • Reid Spencer's avatar
      Preview documentation for additional intrinsic functions. · 8bc7d957
      Reid Spencer authored
      llvm-svn: 35558
      8bc7d957
    • Jeff Cohen's avatar
      Unbreak VC++ build. · 3e96df52
      Jeff Cohen authored
      llvm-svn: 35557
      3e96df52
    • Reid Spencer's avatar
      The bit counting intrinsics return i32 not the operand type. This fixes · add61234
      Reid Spencer authored
      last night's regression in SingleSource/UnitTests/2005-05-11-Popcount-ffs-fls
      
      llvm-svn: 35556
      add61234
    • Zhou Sheng's avatar
      Avoid unnecessary APInt construction. · 150f3bba
      Zhou Sheng authored
      llvm-svn: 35555
      150f3bba
    • Duncan Sands's avatar
    • Zhou Sheng's avatar
      Remove unused methods. · 63b6bc1c
      Zhou Sheng authored
      llvm-svn: 35553
      63b6bc1c
    • Reid Spencer's avatar
      For PR1297: · 8a5799f5
      Reid Spencer authored
      Preview documentation for the llvm.bit.concat intrinsic (yet to be
      implemented).
      
      llvm-svn: 35552
      8a5799f5
    • Evan Cheng's avatar
      Add i16 address mode. · 17d48a8b
      Evan Cheng authored
      llvm-svn: 35551
      17d48a8b
    • Reid Spencer's avatar
      For PR1297: · 4eefaab3
      Reid Spencer authored
      Document changes to bswap and bit counting intrinsics. bswap's name now
      requires two types in the suffix per overloaded intrinsic naming rules.
      The ctpop, cttz, and ctlz intrinsics were changed to always return i32.
      
      llvm-svn: 35550
      4eefaab3
    • Reid Spencer's avatar
      Mention how to create overloaded intrinsics. · 9ade28d2
      Reid Spencer authored
      llvm-svn: 35549
      9ade28d2
    • Reid Spencer's avatar
      For PR1297: · c3d87685
      Reid Spencer authored
      Update these test cases to use proper signatures for bswap which is now
      and overloaded intrinsic. Its name must be of the form llvm.bswap.i32.i32
      since both the parameter and the result or of type "iAny". Also, the
      bit counting intrinsics changed to always return i32.
      
      llvm-svn: 35548
      c3d87685
    • Reid Spencer's avatar
      For PR1297: · 6bba6c81
      Reid Spencer authored
      Support overloaded intrinsics bswap, ctpop, cttz, ctlz.
      
      llvm-svn: 35547
      6bba6c81
    • Reid Spencer's avatar
      For PR1297: · 3a0843e7
      Reid Spencer authored
      Adjust for changes in the bit counting intrinsics. They all return i32
      now so we have to trunc/zext the DAG node accordingly.
      
      llvm-svn: 35546
      3a0843e7
    • Reid Spencer's avatar
      For PR1297: · a090ffb2
      Reid Spencer authored
      Change getOperationName to return std::string instead of const char*
      
      llvm-svn: 35545
      a090ffb2
    • Reid Spencer's avatar
      For PR1297: · eba02145
      Reid Spencer authored
      Implement bswap, ctpop, ctlz, and cttz utilizing the new overloaded
      intrinsic feature of tblgen. By defining llvm_int_ty to have an ValueType
      of iAny, any intrinsic using that type becomes an overloaded intrinsic.
      This signals that a) any integer type could be used for that argument and
      b) the intrinsic needs a suffix to match each such argument for the
      actual intrinsic.
      
      llvm-svn: 35544
      eba02145
    • Reid Spencer's avatar
      For PR1297: · c7c4880a
      Reid Spencer authored
      Intrinsic functions might need to be generated (if they are overloaded) so
      returning a const char* is no longer possible. Change getOperationName to
      return a std::string instead.
      
      llvm-svn: 35543
      c7c4880a
    • Reid Spencer's avatar
      For PR1297: · be23fb03
      Reid Spencer authored
      Change the interface to the getName, getType, getDeclaration methods to
      include the "actual" types of the result/arguments. This is necessary to
      support overloaded intrinsics.
      
      llvm-svn: 35542
      be23fb03
    • Reid Spencer's avatar
      For PR1297: · 2a2117c8
      Reid Spencer authored
      Implement "actual" argument types for the Intrinsic member functions. This
      involves changing the getName, getType, and getDeclaration methods to have
      optional parameters for the actual types. These are necessary in order for
      the type/name to be constructed properly for overloaded intrinsics. Only
      the caller knows the actual argument types desired.
      
      llvm-svn: 35541
      2a2117c8
    • Reid Spencer's avatar
      For PR1297: · 7c57b88b
      Reid Spencer authored
      1. Clear up confusion between "GotBits" and "ExpectBits". GotBits is the
         type actually provided. ExpectedBits is the type expected for the
         intrinsics. Before this patch, it was reversed!
      2. Implement checks for overloaded intrinsics. This involves computing the
         suffix expected and making sure the suffix matches the function name. It
         also includes some intrinsic-specific checks such as ensuring that the
         bswap parameter and result are the same width and an even number of bytes.
      
      llvm-svn: 35540
      7c57b88b
    • Reid Spencer's avatar
      For PR1297: · e67d0c22
      Reid Spencer authored
      Implement code generation for overloaded intrinsic functions. The basic
      difference is that "actual" argument types must be provided when
      constructing intrinsic names and types. Also, for recognition, only the
      prefix is examined. If it matches, the suffix is assumed to match. The
      suffix is checked by the Verifier, however.
      
      llvm-svn: 35539
      e67d0c22
    • Reid Spencer's avatar
      For PR1297: · 51455e00
      Reid Spencer authored
      Add an "iAny" ValueType as a place holder for an integer type of any
      bit width. This is used for intrinsics overloading on integer type.
      
      llvm-svn: 35538
      51455e00
    • Chris Lattner's avatar
      not not! · f517e957
      Chris Lattner authored
      llvm-svn: 35537
      f517e957
    • Chris Lattner's avatar
      Fix InstCombine/2007-03-31-InfiniteLoop.ll · 04277995
      Chris Lattner authored
      llvm-svn: 35536
      04277995
    • Chris Lattner's avatar
      New testcase · 9729bdd8
      Chris Lattner authored
      llvm-svn: 35535
      9729bdd8
    • Nick Lewycky's avatar
      Implement union of wrapped sets. · f22938af
      Nick Lewycky authored
      llvm-svn: 35534
      f22938af
  3. Mar 31, 2007
Loading