Eric Anholt [Thu, 31 Aug 2006 22:53:53 +0000 (15:53 -0700)]
Fix copy'n'paste-o in lexing of the WHILE instruction.
Eric Anholt [Thu, 31 Aug 2006 22:28:10 +0000 (15:28 -0700)]
Initialize the structure used for setting up the ip src/dst in branches/jumps.
This fixes jmpi, if, and iff. The while test still fails to compile.
Eric Anholt [Thu, 31 Aug 2006 22:27:30 +0000 (15:27 -0700)]
Add tests for jmpi, if, iff, and while, revealing issues.
Eric Anholt [Thu, 31 Aug 2006 22:14:23 +0000 (15:14 -0700)]
Explain why rnde-intsrc is expected to fail.
Eric Anholt [Thu, 31 Aug 2006 22:08:52 +0000 (15:08 -0700)]
Add some masks in comments that will help with writing tests.
Eric Anholt [Thu, 31 Aug 2006 21:46:58 +0000 (14:46 -0700)]
Add configure.lineno to ignores.
Eric Anholt [Thu, 31 Aug 2006 21:46:28 +0000 (14:46 -0700)]
Add more unary operation tests.
Eric Anholt [Thu, 31 Aug 2006 21:25:33 +0000 (14:25 -0700)]
Start adding a test suite.
Eric Anholt [Thu, 31 Aug 2006 17:27:48 +0000 (10:27 -0700)]
Add a rule for the ELSE instruction.
Untested.
Eric Anholt [Thu, 31 Aug 2006 17:21:15 +0000 (10:21 -0700)]
Add rules for branch and jump instructions.
Untested.
Eric Anholt [Wed, 30 Aug 2006 18:40:05 +0000 (11:40 -0700)]
Add DO and ENDIF instructions.
Eric Anholt [Wed, 30 Aug 2006 18:10:45 +0000 (11:10 -0700)]
Fix a compiler warning by defining struct {in,}direct_reg at the top level.
Eric Anholt [Wed, 30 Aug 2006 18:09:52 +0000 (11:09 -0700)]
Fix gram.h creation, fixing dependencies and distcheck.
Eric Anholt [Wed, 30 Aug 2006 17:50:56 +0000 (10:50 -0700)]
Fix issues in the grammar that caused errors in bison.
Eric Anholt [Wed, 30 Aug 2006 17:38:44 +0000 (10:38 -0700)]
Add autotools build system, and rearrange directory layout.
Eric Anholt [Wed, 30 Aug 2006 17:22:56 +0000 (10:22 -0700)]
Add input/output file command line arguments.
Eric Anholt [Wed, 30 Aug 2006 16:57:20 +0000 (09:57 -0700)]
Add support for register-indirect addressing in source operands.
Eric Anholt [Wed, 30 Aug 2006 01:31:34 +0000 (18:31 -0700)]
Add support for register-indirect access in destination registers.
This is untested. Also, a few bits for source operand register-indirect access
sneak in with this commit.
Eric Anholt [Tue, 29 Aug 2006 22:29:31 +0000 (15:29 -0700)]
Add support for destination writemasks.
This involved changing dest operands to have their own structure like src
operands, as the destination writemask (which is align16-only) shares space
with register numbers in align1 mode.
Eric Anholt [Tue, 29 Aug 2006 16:30:32 +0000 (09:30 -0700)]
Avoid shift/reduce conflict in predicate by making flagreg and subreg 1 token.
Thanks to keithp for pointing out where the conflict was.
Eric Anholt [Tue, 29 Aug 2006 06:05:51 +0000 (23:05 -0700)]
Add support for predicate control.
This is untested on programs using predicate control, and also causes a
shift/reduce conflict.
Eric Anholt [Tue, 29 Aug 2006 05:11:18 +0000 (22:11 -0700)]
Add support for swizzle control on source operands.
This required restructuring to store source operands in a new structure rather
than being stored in instructions, as swizzle is align16-only and shares
storage with other fields for align1 mode.
These changes were not tested on real programs using swizzle.
Eric Anholt [Sat, 26 Aug 2006 00:44:55 +0000 (17:44 -0700)]
Add acc[01] as src operands.
Eric Anholt [Sat, 26 Aug 2006 00:42:05 +0000 (17:42 -0700)]
Comment cleanup and add missing semicolons after rules.
Eric Anholt [Sat, 26 Aug 2006 00:33:02 +0000 (17:33 -0700)]
Add support for more instruction options.
Eric Anholt [Fri, 25 Aug 2006 23:54:01 +0000 (16:54 -0700)]
Typo fix in comment.
Eric Anholt [Fri, 25 Aug 2006 23:52:09 +0000 (16:52 -0700)]
Rename direct_gen_reg struct to direct_reg now that it fills more roles.
Eric Anholt [Fri, 25 Aug 2006 23:50:17 +0000 (16:50 -0700)]
Support src ARF operands in another place, and spell it arch instead of acc.
Eric Anholt [Fri, 25 Aug 2006 20:53:48 +0000 (13:53 -0700)]
Add support for more registers as source operands.
Eric Anholt [Fri, 25 Aug 2006 20:38:03 +0000 (13:38 -0700)]
Add rules for more registers, and use some for destinations.
Eric Anholt [Fri, 25 Aug 2006 18:10:00 +0000 (11:10 -0700)]
Rename the resulting binary to gen4asm instead of lextest.
Eric Anholt [Fri, 25 Aug 2006 18:08:03 +0000 (11:08 -0700)]
Add a negation that the initial disasm missed.
Eric Anholt [Fri, 25 Aug 2006 18:05:10 +0000 (11:05 -0700)]
Add many more opcodes.
Eric Anholt [Fri, 25 Aug 2006 16:46:18 +0000 (09:46 -0700)]
Lex the register number with the register name.
This avoids the need for a start condition to prevent for example g1.8<0,1,0>UW
being lexed as GENREG NUMBER LANGLE etc. rather than
GENREG INTEGER DOT INTEGER LANGLE etc.
Eric Anholt [Fri, 25 Aug 2006 16:36:28 +0000 (09:36 -0700)]
Add syntax for extended math send functions, and adjust packed_yuv_sf for it.
Eric Anholt [Thu, 24 Aug 2006 23:37:04 +0000 (16:37 -0700)]
Add a syntax for urb write messages.
Eric Anholt [Thu, 24 Aug 2006 22:43:50 +0000 (15:43 -0700)]
Add some more generated files to ignore.
Eric Anholt [Thu, 24 Aug 2006 22:43:20 +0000 (15:43 -0700)]
Add packed yuv sf kernel from 2d driver.
Eric Anholt [Thu, 24 Aug 2006 22:26:10 +0000 (15:26 -0700)]
Add syntax for translating the DP write send message.
Eric Anholt [Thu, 24 Aug 2006 21:47:21 +0000 (14:47 -0700)]
Fix respecting of instruction options (misunderstood default action behavior).
Eric Anholt [Thu, 24 Aug 2006 21:35:10 +0000 (14:35 -0700)]
Fix up sampler send message translation and give it a near-usable syntax.
Eric Anholt [Thu, 24 Aug 2006 19:36:56 +0000 (12:36 -0700)]
Zero out the initial header instoptions.
Eric Anholt [Thu, 24 Aug 2006 19:36:21 +0000 (12:36 -0700)]
There's no reason to provide typing or region on the null register.
Eric Anholt [Thu, 24 Aug 2006 17:51:48 +0000 (10:51 -0700)]
bzero instructions before filling in the bits we care about.
This avoids some set bits in padding fields.
Eric Anholt [Tue, 22 Aug 2006 22:21:44 +0000 (15:21 -0700)]
Fill in type of null register to match Mesa.
Eric Anholt [Tue, 22 Aug 2006 22:21:28 +0000 (15:21 -0700)]
This code was supposed to be null instead of acc0 (brw_disasm.c gave "a0").
Eric Anholt [Tue, 22 Aug 2006 21:52:14 +0000 (14:52 -0700)]
Fix translation of message registers.
Eric Anholt [Tue, 22 Aug 2006 21:46:39 +0000 (14:46 -0700)]
Fix translation of saturate value, and wire conditionalmod to 0 for now.
Eric Anholt [Tue, 22 Aug 2006 21:43:03 +0000 (14:43 -0700)]
Remove generated source from repo.
Eric Anholt [Tue, 22 Aug 2006 21:42:45 +0000 (14:42 -0700)]
Add support for negate and abs to source operands.
Eric Anholt [Tue, 22 Aug 2006 20:33:41 +0000 (13:33 -0700)]
Fix imm32 translation.
Eric Anholt [Tue, 22 Aug 2006 20:15:38 +0000 (13:15 -0700)]
Fix dest_horiz_stride translation, and destination type.
Eric Anholt [Tue, 22 Aug 2006 20:15:00 +0000 (13:15 -0700)]
And add a comma. This was supposed to be a minor change.
Eric Anholt [Tue, 22 Aug 2006 20:14:09 +0000 (13:14 -0700)]
Remove generated file.
Eric Anholt [Tue, 22 Aug 2006 20:08:26 +0000 (13:08 -0700)]
Fix horizontal stride translation.
Eric Anholt [Tue, 22 Aug 2006 19:46:37 +0000 (12:46 -0700)]
C warnings cleanup.
Eric Anholt [Tue, 22 Aug 2006 19:44:28 +0000 (12:44 -0700)]
Add Wall.
Eric Anholt [Tue, 22 Aug 2006 19:42:25 +0000 (12:42 -0700)]
actually print out last uint32_t of instruction.
Eric Anholt [Tue, 22 Aug 2006 19:41:09 +0000 (12:41 -0700)]
Start correcting the translation.
Eric Anholt [Tue, 22 Aug 2006 18:54:19 +0000 (11:54 -0700)]
Get the wm program to parse.
Eric Anholt [Tue, 22 Aug 2006 17:15:33 +0000 (10:15 -0700)]
Initial gen4asm code.
Damien Lespiau [Wed, 20 Feb 2013 14:40:07 +0000 (14:40 +0000)]
build: Guard the inclusions of config.h with HAVE_CONFIG_H
autoconf can be configured to not generate a config.h but to give the
defines with command line arguments instead. In this case, there's no
config.h to include.
To work in both cases autoconf adds a HAVE_CONFIG_H define on the command
line to signal there's a config.h to include.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Tue, 19 Feb 2013 00:39:04 +0000 (00:39 +0000)]
lib: Allow to override the device id at run time
Using the same environment variable as libdrm so one doesn't have to
remember two different things. This is helpful to run a test under a
fake identity, to, say, dump an aub file.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Mon, 18 Feb 2013 23:49:48 +0000 (23:49 +0000)]
lib: Factor out a function to check if an environment variable is set
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Kenneth Graunke [Fri, 1 Mar 2013 23:36:20 +0000 (15:36 -0800)]
intel_chipset: Fix Haswell CRW PCI IDs.
The second digit was off by one, which meant we accidentally treated
GT(n) as GT(n-1). This also meant no support for GT1 at all.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Ben Widawsky [Fri, 22 Feb 2013 02:31:20 +0000 (18:31 -0800)]
quick_dump: prettier printing
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Tue, 19 Feb 2013 17:53:43 +0000 (09:53 -0800)]
fix arch build: update ax_python_devel.m4
I complained about the broken m4 script, and it got fixed. I love the
internet.
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ville Syrjälä [Mon, 18 Feb 2013 19:41:10 +0000 (21:41 +0200)]
intel_chipset: Add multiple inclusion guards into intel_chipset.h
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Ville Syrjälä [Mon, 18 Feb 2013 19:41:09 +0000 (21:41 +0200)]
intel_chipset: Use parens around macro arguments
Protect the macro argument evaluations with parens.
This is already touching most lines, so while at it, fix up all white
space to uniform style throughout the file.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Damien Lespiau [Tue, 12 Feb 2013 14:24:40 +0000 (14:24 +0000)]
tests: Forbid to run the blit tests with count of 1
Invoking say,
sudo ./tests/gem_render_linear_blits 1
does not make a lot of sense as we're creating a single bo. The test
does not yell at you and passes, even if the rendercopy function does
not do anything. This makes it quite harmful when trying to debug
rendercopy without realizing that count is the number of allocated bos
and must be >= 2.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Damien Lespiau [Wed, 13 Feb 2013 16:29:02 +0000 (16:29 +0000)]
tests: Add a quick variant to the gem_storedw_* tests
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Damien Lespiau [Wed, 13 Feb 2013 16:29:01 +0000 (16:29 +0000)]
lib: Add a way to specify values for "quick" runs
In some environments, we don't really want to loop 100000 times or
allocate
152352621 buffers because it makes the tests too long to run.
This adds a way to specify "quick" values to reduce the time taken by
certain tests.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Yi Sun [Tue, 12 Feb 2013 15:11:35 +0000 (23:11 +0800)]
tests/testdisplay.c: Remove the variable only_one_mode.
That variable is useless, instead the variables specified_mode_num and specified_disp_id can cover all the situation.
For parameter -o, all three instances should work:
./testdisplay -o 21,4 only test the 4th mode on the connector with id 21.
./testdisplay -o 21 test all the mode lines on the connector wiht id 21.
./testdisplay -o ,4 the -o is ignored, just like -a.
Signed-off-by: Yi Sun <yi.sun@intel.com>
Matt Turner [Fri, 8 Feb 2013 19:36:54 +0000 (19:36 +0000)]
quick_dump: Makefile.am best practices and fix distcheck
A few changes
- Put CPPFLAGS in AM_CPPFLAGS instead of a per-target CFLAGS var;
- Use _LIBS/_CFLAGS from pkg-config instead of hard-coded values;
- List non-generated scripts in dist_bin_SCRIPTS;
- Add chipset.py to the run that implicitly generates it, which fixes
distcheck.
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Matt Turner [Fri, 8 Feb 2013 19:36:53 +0000 (19:36 +0000)]
configure.ac: fix autogen.sh
Put -I m4 in ACLOCAL_AMFLAGS so ./autogen.sh just works
[ben: commit message modified by]
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Fri, 8 Feb 2013 02:58:17 +0000 (18:58 -0800)]
quick_dump: chdir us to where the text files are
This is useful if you run out of the quick_dump directory.
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Thu, 7 Feb 2013 16:35:57 +0000 (08:35 -0800)]
README: Add quick_dump info
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Thu, 7 Feb 2013 16:28:14 +0000 (08:28 -0800)]
quick_dump: Give dumper an AM_CONDITIONAL
It may sometimes be undesirable to build or install the quick dumper.
This was requested by Damien.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Sat, 2 Feb 2013 19:31:46 +0000 (11:31 -0800)]
quick_dump: Use the register access library
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Sat, 2 Feb 2013 04:13:25 +0000 (20:13 -0800)]
quick_dump: Connect libpciaccess and other utils
Make a register access library with sample to do register reads
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Fri, 1 Feb 2013 22:54:31 +0000 (14:54 -0800)]
quick_dump: SWIG chipset interface
This isn't strictly necessary it would have been easy enough to simply
convert intel_chipset.h but this should be nice prep work for directly
doing MMIO. It also serves as a nice review point.
It's demonstrated with an autodetect function in the script. That
autodetect has a hardcoded path that shouldn't be there, but it will go
away in the next patch when we can properly link in libpciaccess.
Thanks to Matt for helping whip the automake stuff into shape.
v2: Switch to $(top_srcdir)
Reviewed-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Fri, 1 Feb 2013 22:53:19 +0000 (14:53 -0800)]
configure.ac: Add swig dependency
As far as I can tell (and recommended to me by Matt) taking these m4
extension macros from http://www.gnu.org/software/autoconf-archive/
doesn't require the project distribute GPL. I am a bit confused from
reading the license. I'd really hope someone can comment.
The only other solution would be to roll my on m4 macros, or figure out
a way to check that this autoconf-archive package is included from the
configure.ac.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Thu, 31 Jan 2013 19:09:15 +0000 (11:09 -0800)]
quick_dump: vlv support
This patch includes a patch from Jesse which removed a bunch of VLV
registers which were useless in my original RFC.
Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Thu, 31 Jan 2013 19:08:36 +0000 (11:08 -0800)]
quick_dump: gen7 support
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Thu, 31 Jan 2013 19:08:06 +0000 (11:08 -0800)]
quick_dump: gen6 support
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Thu, 20 Sep 2012 05:08:46 +0000 (22:08 -0700)]
quick_dump: A dump utility different than reg_dumper
This is the base tool for quick dump. At it's heart, quick dump is
simply a basic text parsing thingie which plugs into intel-gpu-tools to
do something similar to intel_reg_dumper.
The format for the register definition files is very open, so it's just
something simple for now.
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Thu, 7 Feb 2013 16:29:24 +0000 (08:29 -0800)]
configure.ac: Move prime stuff to where it belongs
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Thu, 7 Feb 2013 18:30:03 +0000 (10:30 -0800)]
configure: slightly more standard --disable-tests
Cc: Julien Cristau <jcristau@debian.org>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Rodrigo Vivi [Tue, 5 Feb 2013 18:17:54 +0000 (16:17 -0200)]
Build: Add --disable-tests configure flag to avoid tests build
Tests are still being built by default. However this request
came from OSVs in order to allow them to include i-g-t in their
distributions by default avoiding adding more and more dependencies
since we are improving and adding more and more tests.
v2: wait for Ben's spacing fixes and adjusted for new space rules.
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Acked-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Ben Widawsky [Thu, 31 Jan 2013 21:06:17 +0000 (13:06 -0800)]
configure.ac: Add vim magic modeline
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Ben Widawsky [Thu, 31 Jan 2013 21:04:18 +0000 (13:04 -0800)]
configure.ac: Fix spacing
Almost all based on vim's config file type. It got it wrong in a few
places which were fixed by hand.
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Mika Kuoppala [Tue, 5 Feb 2013 10:26:49 +0000 (12:26 +0200)]
tests/gem_ctx_exec: properly test destroy_ctx ioctl
Call context destroy with proper ioctl number and
add test to verify that we can't post batchbuffers
with destroyed context.
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Ben Widawsky [Tue, 5 Feb 2013 01:47:53 +0000 (17:47 -0800)]
intel_gtt: Fix PTE offsets
Vincent sent me a patch which I think didn't go far enough.
Honestly, I don't even know what this tool does.
Reported-by: Cheah, Vincent Beng Keat <vincent.beng.keat.cheah@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Chris Wilson [Mon, 4 Feb 2013 21:41:13 +0000 (21:41 +0000)]
intel_error_decode: Don't barf on a malformed PCI ID line
Whoops, someone added UTS_RELEASE with no newline before PCI ID which
upsets our naive parser.
Jesse Barnes [Sat, 2 Feb 2013 10:24:39 +0000 (11:24 +0100)]
add more VLV PCI IDs
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Ville Syrjälä [Wed, 30 Jan 2013 12:52:24 +0000 (14:52 +0200)]
kms_flip: Add flip-vs-modeset-vs-hang test
The flip-vs-modeset-vs-hang test will:
1. simulate a GPU hang
2. exec a nop batch
3. schedule a page flip
4. perform a modeset operation
With the current buggy kernel driver, the modeset operation will
hang indefinitely waiting for the flip to complete. Since the
rings are stopped, that will never happen. The current GPU reset
code doesn't play well with page flips either, so a GPU reset
won't fix things.
Once the kernel driver is fixed, the eventual GPU reset will
save the day.
The nop batch buffer is required only because the kernel can't
currently detect GPU hangs, unless there is at least one user
submitted request pending.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Ville Syrjälä [Wed, 30 Jan 2013 12:52:23 +0000 (14:52 +0200)]
kms_flip: Make flip events optional
Pass an argument to do_page_flip() telling it whether to request flip
events.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Chris Wilson [Thu, 17 Jan 2013 15:07:50 +0000 (15:07 +0000)]
tests/gem_lut_handle: Limit testing LUT interface to recent kernels
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Chris Wilson [Thu, 17 Jan 2013 15:05:20 +0000 (15:05 +0000)]
tests/gem_lut_handle: Expand negative testing
Pass in lots of execs and relocs trying to trick the kernel into making
a mistake.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Chris Wilson [Wed, 14 Nov 2012 12:15:01 +0000 (12:15 +0000)]
tests: Benchmark new API for using a LUT with the execbuffer
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>