home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / superopt-2.5-diffs.gz.pi < prev    next >
Fred Fish's Product-Info  |  1996-10-12  |  2KB  |  49 lines

  1. .name
  2. superopt
  3. .fullname
  4. superoptimizer
  5. .type
  6. Programmer Tool
  7. .short
  8. Finds optimal asm instruction sequences.
  9. .description
  10. The superoptimizer is a function sequence generator that uses an
  11. exhaustive generate-and-test approach to finding the shortest
  12. instruction sequence for a given function.  You have to tell the
  13. superoptimizer which function and which CPU you want to generate code
  14. for, and how many instructions you can accept.
  15.  
  16. The superoptimizer can't generate very long sequences, unless you have
  17. a very fast computer or very much spare time.  The time complexity of
  18. the used algorithm is approximately O(m n*2n) where m is the number of
  19. available instructions on the architecture and n is the shortest
  20. sequence for the goal function.  The practical sequence length limit
  21. depends on the target architecture and goal function arity; In most
  22. cases it is about 5, but for a rich instruction set as the HPPA it is
  23. just 4.  The longest sequence ever generated was for the MC68020 and 7
  24. instructions long.  It took several weeks to generate it...
  25.  
  26. The superoptimizer can't guarantee that it finds the best possible
  27. instruction sequences for all possible goal functions.  For example,
  28. it doesn't even try to include immediate constants (other that -1, 0,
  29. +1, and the smallest negative and biggest positive numbers) in the
  30. sequences.
  31.  
  32. Other reasons why not optimal sequences might be found is that not all
  33. instructions are included, not even in their register-only form.
  34. Also, some instructions included might not be correctly simulated.  If
  35. you encounter any of these problems, please report them to the address
  36. below.
  37. .version
  38. 2.5
  39. .author
  40. Torbjorn Granlund
  41. .email
  42. tege@gnu.ai.mit.edu
  43. .distribution
  44. GNU Public License
  45. .described-by
  46. Fred Fish (fnf@amigalib.com)
  47. .submittal
  48. Downloaded from prep.ai.mit.edu:pub/gnu
  49.