1
0
mirror of https://github.com/golang/go synced 2024-11-23 07:00:05 -07:00
go/test/fixedbugs
Josh Bleecher Snyder 03c0f3fea9 cmd/gc: alias more variables during register allocation
This is joint work with Daniel Morsing.

In order for the register allocator to alias two variables, they must have the same width, stack offset, and etype. Code generation was altering a variable's etype in a few places. This prevented the variable from being moved to a register, which in turn prevented peephole optimization. This failure to alias was very common, with almost 23,000 instances just running make.bash.

This phenomenon was not visible in the register allocation debug output because the variables that failed to alias had the same name. The debugging-only change to bits.c fixes this by printing the variable number with its name.

This CL fixes the source of all etype mismatches for 6g, all but one case for 8g, and depressingly few cases for 5g. (I believe that extending CL 6819083 to 5g is a prerequisite.) Fixing the remaining cases in 8g and 5g is work for the future.

The etype mismatch fixes are:

* [gc] Slicing changed the type of the base pointer into a uintptr in order to perform arithmetic on it. Instead, support addition directly on pointers.

* [*g] OSPTR was giving type uintptr to slice base pointers; undo that. This arose, for example, while compiling copy(dst, src).

* [8g] 64 bit float conversion was assigning int64 type during codegen, overwriting the existing uint64 type.

Note that some etype mismatches are appropriate, such as a struct with a single field or an array with a single element.

With these fixes, the number of registerizations that occur while running make.bash for 6g increases ~10%. Hello world binary size shrinks ~1.5%. Running all benchmarks in the standard library show performance improvements ranging from nominal to substantive (>10%); a full comparison using 6g on my laptop is available at https://gist.github.com/josharian/8f9b5beb46667c272064. The microbenchmarks must be taken with a grain of salt; see issue 7920. The few benchmarks that show real regressions are likely due to issue 7920. I manually examined the generated code for the top few regressions and none had any assembly output changes. The few benchmarks that show extraordinary improvements are likely also due to issue 7920.

Performance results from 8g appear similar to 6g.

5g shows no performance improvements. This is not surprising, given the discussion above.

Update #7316

LGTM=rsc
R=rsc, daniel.morsing, bradfitz
CC=dave, golang-codereviews
https://golang.org/cl/91850043
2014-05-12 17:10:36 -04:00
..
bug083.dir
bug088.dir
bug106.dir
bug133.dir
bug160.dir
bug191.dir test: don't rely on order of unrelated imports in bug191 2013-12-10 12:05:37 -08:00
bug222.dir
bug248.dir
bug282.dir
bug302.dir
bug306.dir
bug313.dir
bug322.dir
bug324.dir test: use rundir and errorcheckdir for a few more tests. 2012-10-07 18:37:05 +02:00
bug335.dir test: use run.go for more tests. 2012-08-25 10:16:02 +02:00
bug345.dir
bug367.dir test: use rundir and errorcheckdir for a few more tests. 2012-10-07 18:37:05 +02:00
bug369.dir
bug377.dir
bug382.dir test: convert more tests to rundir/compiledir conventions 2012-10-07 23:22:01 +02:00
bug392.dir test: use run.go for more tests. 2012-08-25 10:16:02 +02:00
bug396.dir
bug404.dir
bug407.dir
bug414.dir test: use rundir and errorcheckdir for a few more tests. 2012-10-07 18:37:05 +02:00
bug415.dir test: use run.go for more tests. 2012-08-25 10:16:02 +02:00
bug424.dir test: convert more tests to rundir/compiledir conventions 2012-10-07 23:22:01 +02:00
bug437.dir test: convert tests to run.go whenever possible. 2012-10-10 22:35:27 +02:00
bug448.dir cmd/gc: fix inlining bug with receive operator. 2012-08-01 00:45:26 +02:00
bug460.dir cmd/gc: tag builtin error, byte, rune to avoid exporting them. 2013-08-27 21:18:32 +02:00
bug465.dir cmd/gc: fix pointer composite literals in exported if statements. 2013-06-23 18:39:07 +02:00
bug466.dir cmd/gc: don't squash complex literals when inlining. 2012-10-17 20:33:44 +02:00
bug467.dir cmd/gc: fix incomplete export data when inlining with local variables. 2012-11-01 19:06:52 +01:00
bug468.dir reflect: fix test of whether structs are identical 2012-11-07 11:55:35 -08:00
bug472.dir cmd/gc: add space to export data to match linker expectations 2013-01-09 22:02:53 +01:00
bug478.dir test: add a test that gccgo failed to compile 2013-09-18 16:30:38 -07:00
bug479.dir test: add a test that causes gccgo to get a failure at link time 2013-09-19 15:20:39 -07:00
bug480.dir test: add some test cases that were miscompiled by gccgo 2013-12-10 10:47:30 -08:00
issue3552.dir cmd/gc: fix wrong interaction between inlining and embedded builtins. 2012-12-22 19:16:31 +01:00
issue4252.dir cmd/gc: do not export useless private symbols. 2012-12-08 14:43:00 +01:00
issue4326.dir test/run: handle compiledir and errorcheckdir with multi-file packages 2013-01-02 15:31:49 -05:00
issue4370.dir cmd/gc: fix export of inlined function body with type guard 2012-11-08 16:07:05 -05:00
issue4510.dir test: match gccgo error messages 2013-12-12 17:18:37 -08:00
issue4590.dir cmd/gc: mark wrapper methods for unnamed types as DUPOK. 2013-01-02 21:42:26 +01:00
issue4879.dir cmd/gc: fix corruption in export of &T{} literals. 2013-02-26 00:43:31 +01:00
issue4932.dir cmd/gc: unbreak exporting of composite literals. 2013-03-04 16:42:03 +01:00
issue4964.dir cmd/gc: fix escape analysis bug. 2013-03-15 09:03:45 +01:00
issue5105.dir cmd/5l, cmd/6l, cmd/8l: fix segfault on reading LOCALS for a duplicate definition. 2013-03-25 22:09:55 +01:00
issue5125.dir cmd/gc: be more tolerant with recursive types when checking map types. 2013-04-03 08:18:30 +02:00
issue5259.dir cmd/gc: disable inlining of method values 2013-04-13 08:22:16 +02:00
issue5260.dir gc: escape unicode BOM in exported string literals 2013-04-11 11:45:18 -07:00
issue5291.dir cmd/gc: initialize t->width in dgcsym() if required 2013-04-25 18:47:12 +02:00
issue5470.dir cmd/gc: repair make(T) in export data for inlining. 2013-05-16 09:01:43 +02:00
issue5614.dir cmd/gc: fix missing slice/array types in export data. 2013-06-04 08:18:36 +02:00
issue5755.dir cmd/gc: fix missing export data for inlining in a few other cases. 2013-06-28 23:29:13 +02:00
issue5910.dir cmd/gc: tag builtin error, byte, rune to avoid exporting them. 2013-08-27 21:18:32 +02:00
issue5957.dir test: match gccgo import error messages 2013-12-12 19:02:11 -08:00
issue6295.dir cmd/gc: preserve qualified names of unexported methods in imports. 2014-01-21 22:55:50 -05:00
issue6513.dir cmd/gc: qualified embedded fields with owner package. 2013-10-02 12:27:33 -04:00
issue6789.dir test: add some test cases that were miscompiled by gccgo 2013-12-10 10:47:30 -08:00
issue7023.dir cmd/gc: mark OGOTO as a statement for formatters. 2014-01-10 01:33:24 +01:00
issue7648.dir cmd/gc: fix spurious "bad negated constant" for complex constants. 2014-04-01 02:55:38 -04:00
bug000.go
bug002.go
bug003.go
bug004.go
bug005.go
bug006.go
bug007.go
bug008.go
bug009.go
bug010.go
bug011.go
bug012.go
bug013.go
bug014.go
bug015.go
bug016.go
bug017.go
bug020.go
bug021.go
bug022.go
bug023.go
bug024.go
bug026.go
bug027.go
bug028.go
bug030.go
bug031.go
bug035.go
bug037.go
bug039.go
bug040.go cmd/gc: ensure unique parameter and result names in function types 2013-03-15 15:24:13 -04:00
bug045.go
bug046.go
bug047.go
bug048.go
bug049.go
bug050.go
bug051.go
bug052.go
bug053.go
bug054.go
bug055.go
bug056.go
bug057.go
bug058.go
bug059.go
bug060.go
bug061.go
bug062.go
bug063.go
bug064.go
bug065.go
bug066.go
bug067.go
bug068.go
bug069.go
bug070.go
bug071.go
bug072.go
bug073.go
bug074.go
bug075.go
bug076.go
bug077.go
bug078.go
bug080.go
bug081.go
bug082.go
bug083.go test: use rundir and errorcheckdir for a few more tests. 2012-10-07 18:37:05 +02:00
bug084.go
bug085.go test: s/float/float32/ 2012-12-13 15:11:31 -08:00
bug086.go test: update bug086.go for current gccgo behaviour 2013-08-09 08:43:19 -07:00
bug087.go
bug088.go test: add a compiledir pattern in run.go 2012-07-30 21:12:05 +02:00
bug089.go
bug090.go
bug091.go
bug092.go
bug093.go
bug094.go
bug096.go
bug097.go
bug098.go
bug099.go
bug101.go
bug102.go
bug103.go
bug104.go
bug106.go test: add a compiledir pattern in run.go 2012-07-30 21:12:05 +02:00
bug107.go
bug108.go
bug109.go
bug110.go
bug111.go
bug112.go
bug113.go
bug114.go
bug115.go
bug116.go
bug117.go
bug118.go
bug119.go
bug120.go
bug121.go
bug122.go
bug123.go
bug126.go
bug127.go
bug128.go
bug129.go
bug130.go
bug131.go
bug132.go
bug133.go test: use rundir and errorcheckdir for a few more tests. 2012-10-07 18:37:05 +02:00
bug135.go
bug136.go
bug137.go
bug139.go
bug140.go
bug141.go
bug142.go
bug143.go
bug144.go
bug145.go
bug146.go
bug147.go
bug148.go
bug149.go
bug150.go
bug151.go
bug152.go
bug154.go
bug155.go
bug156.go
bug157.go
bug158.go
bug159.go
bug160.go test: use rundir and errorcheckdir for a few more tests. 2012-10-07 18:37:05 +02:00
bug161.go
bug163.go
bug164.go
bug165.go
bug167.go
bug168.go
bug169.go
bug170.go
bug171.go
bug172.go
bug173.go
bug174.go
bug175.go
bug176.go cmd/gc: suppress array index error caused by a previously reported error 2014-03-29 15:45:40 +01:00
bug177.go
bug178.go
bug179.go
bug180.go
bug181.go
bug182.go
bug183.go
bug184.go
bug185.go
bug186.go
bug187.go
bug188.go
bug189.go
bug190.go
bug191.go test: don't rely on order of unrelated imports in bug191 2013-12-10 12:05:37 -08:00
bug192.go
bug193.go
bug194.go
bug195.go
bug196.go
bug197.go
bug198.go
bug199.go
bug200.go
bug201.go
bug202.go
bug203.go
bug204.go
bug205.go test: match gccgo error messages 2013-06-20 08:21:14 +02:00
bug206.go test: use run.go for more tests. 2012-08-25 10:16:02 +02:00
bug206.out test: use run.go for more tests. 2012-08-25 10:16:02 +02:00
bug207.go
bug208.go
bug209.go
bug211.go
bug212.go
bug213.go
bug214.go
bug215.go
bug216.go
bug217.go
bug218.go
bug219.go
bug221.go
bug222.go test: use run.go for more tests. 2012-08-25 10:16:02 +02:00
bug223.go test: match gccgo error messages 2012-09-28 08:30:30 -07:00
bug224.go
bug225.go
bug227.go
bug228.go test: s/float/float32/ 2012-12-13 15:11:31 -08:00
bug229.go
bug230.go
bug231.go
bug232.go
bug233.go
bug234.go
bug235.go
bug236.go
bug237.go
bug238.go
bug239.go
bug240.go
bug241.go
bug242.go
bug243.go
bug244.go
bug245.go
bug246.go
bug247.go
bug248.go test: expand run.go's errorcheck, make clear which bugs run 2012-09-23 13:16:14 -04:00
bug249.go
bug250.go
bug251.go
bug252.go
bug253.go
bug254.go
bug255.go cmd/gc: Friendlier errors on oversized arrays. 2012-10-21 19:22:51 +02:00
bug256.go
bug257.go
bug258.go
bug259.go
bug260.go
bug261.go
bug262.go
bug263.go
bug264.go
bug265.go
bug266.go
bug267.go
bug269.go
bug271.go
bug272.go
bug273.go test: tweak bug273.go to not have constant len < cap when calling make 2012-12-04 16:51:51 -08:00
bug274.go
bug275.go
bug276.go
bug277.go
bug278.go
bug279.go
bug280.go
bug281.go
bug282.go test: add a compiledir pattern in run.go 2012-07-30 21:12:05 +02:00
bug283.go
bug284.go
bug285.go
bug286.go
bug287.go
bug288.go
bug289.go
bug290.go
bug291.go
bug292.go
bug293.go
bug294.go
bug295.go test/fixedbugs/bug295.go: fix test in anticipation of future gc fix 2013-09-20 09:40:56 -07:00
bug296.go
bug297.go cmd/gc: reject non-Go constants 2013-02-01 23:10:02 -05:00
bug298.go
bug299.go
bug300.go
bug301.go
bug302.go test: expand run.go's errorcheck, make clear which bugs run 2012-09-23 13:16:14 -04:00
bug303.go
bug304.go
bug305.go
bug306.go test: add a compiledir pattern in run.go 2012-07-30 21:12:05 +02:00
bug307.go
bug308.go
bug309.go
bug311.go
bug312.go
bug313.go test: add rotate.go and fixedbugs/bug313 2013-01-11 22:42:55 +01:00
bug314.go
bug315.go
bug316.go
bug317.go
bug318.go
bug319.go
bug320.go
bug321.go
bug322.go test: use rundir and errorcheckdir for a few more tests. 2012-10-07 18:37:05 +02:00
bug323.go
bug324.go test: use rundir and errorcheckdir for a few more tests. 2012-10-07 18:37:05 +02:00
bug325.go
bug326.go
bug327.go
bug328.go
bug328.out
bug329.go
bug330.go
bug331.go
bug332.go
bug333.go
bug334.go
bug335.go test: use run.go for more tests. 2012-08-25 10:16:02 +02:00
bug336.go
bug337.go
bug338.go
bug339.go
bug340.go
bug341.go
bug342.go cmd/gc: ensure unique parameter and result names in function types 2013-03-15 15:24:13 -04:00
bug343.go
bug344.go
bug345.go test: expand run.go's errorcheck, make clear which bugs run 2012-09-23 13:16:14 -04:00
bug346.go
bug347.go
bug348.go
bug349.go
bug350.go
bug351.go
bug352.go
bug353.go
bug354.go
bug355.go
bug356.go
bug357.go cmd/gc: put 'not used' message on correct line 2013-02-01 21:13:41 -05:00
bug358.go test: match gccgo error messages for bug358.go 2012-10-30 20:56:32 -07:00
bug361.go
bug362.go
bug363.go
bug364.go
bug365.go
bug366.go
bug367.go test: use rundir and errorcheckdir for a few more tests. 2012-10-07 18:37:05 +02:00
bug368.go
bug369.go testing: change -test.benchtime to a flag.Duration. 2012-10-09 08:57:29 +11:00
bug370.go
bug371.go
bug372.go
bug373.go
bug374.go
bug375.go
bug376.go
bug377.go test: add a compiledir pattern in run.go 2012-07-30 21:12:05 +02:00
bug378.go
bug379.go cmd/gc: put 'not used' message on correct line 2013-02-01 21:13:41 -05:00
bug380.go
bug381.go
bug382.go test: convert more tests to rundir/compiledir conventions 2012-10-07 23:22:01 +02:00
bug383.go
bug384.go
bug385_32.go test: enable bug385_32 test on amd64p32. 2014-03-20 07:28:24 +01:00
bug385_64.go test: disable large type/stack frame tests for gccgo 2013-12-12 17:13:46 -08:00
bug386.go
bug387.go
bug388.go
bug389.go
bug390.go
bug391.go
bug392.go test: use run.go for more tests. 2012-08-25 10:16:02 +02:00
bug393.go
bug394.go
bug396.go test: add a compiledir pattern in run.go 2012-07-30 21:12:05 +02:00
bug397.go
bug398.go
bug399.go
bug401.go
bug402.go
bug403.go
bug404.go test: add a compiledir pattern in run.go 2012-07-30 21:12:05 +02:00
bug405.go
bug406.go
bug407.go test: add a compiledir pattern in run.go 2012-07-30 21:12:05 +02:00
bug409.go
bug409.out
bug410.go cmd/gc: Error out on division by constant zero. 2013-01-30 20:21:08 +01:00
bug411.go
bug412.go cmd/gc: ensure unique parameter and result names in function types 2013-03-15 15:24:13 -04:00
bug413.go test: match gccgo error messages 2012-09-28 08:30:30 -07:00
bug414.go test: use rundir and errorcheckdir for a few more tests. 2012-10-07 18:37:05 +02:00
bug415.go test: use run.go for more tests. 2012-08-25 10:16:02 +02:00
bug416.go test: match gccgo error messages 2012-09-28 08:30:30 -07:00
bug417.go
bug418.go
bug419.go
bug420.go
bug421.go
bug422.go
bug423.go
bug424.go test: convert more tests to rundir/compiledir conventions 2012-10-07 23:22:01 +02:00
bug425.go
bug426.go
bug427.go
bug428.go
bug429.go test: expand run.go's errorcheck, make clear which bugs run 2012-09-23 13:16:14 -04:00
bug430.go
bug431.go
bug432.go
bug433.go
bug434.go
bug435.go cmd/gc: insert \n at end of every input file 2013-07-30 10:27:08 -04:00
bug436.go
bug437.go test: convert tests to run.go whenever possible. 2012-10-10 22:35:27 +02:00
bug438.go
bug439.go
bug440_32.go cmd/6g, cmd/8g: eliminate short integer arithmetic when possible. 2012-09-01 16:40:54 +02:00
bug440_64.go cmd/6g, cmd/8g: eliminate short integer arithmetic when possible. 2012-09-01 16:40:54 +02:00
bug441.go
bug442.go
bug443.go
bug444.go cmd/gc: fix use of nil interface, slice 2012-09-22 20:42:11 -04:00
bug445.go
bug446.go cmd/gc: fix initialization order involving method calls. 2012-07-30 09:14:49 +02:00
bug447.go cmd/6g: fix float32/64->uint64 conversion 2012-08-23 14:35:26 +08:00
bug448.go cmd/gc: fix inlining bug with receive operator. 2012-08-01 00:45:26 +02:00
bug449.go runtime: round return value address in runtime.equal 2012-07-31 23:02:46 -04:00
bug450.go cmd/8g: fix miscompilation due to BADWIDTH. 2012-08-03 22:05:51 +02:00
bug451.go test: match gccgo error messages 2012-09-28 08:30:30 -07:00
bug452.go test: restore nigel's bug451 as bug452. 2012-08-31 15:43:27 -04:00
bug453.go cmd/6g: fix internal error with SSE registers. 2012-09-23 18:22:03 +02:00
bug454.go test/fixedbugs/bug454.go: add a test for CL 6564052 2012-09-29 23:23:56 +08:00
bug455.go test/fixedbugs: forgotten test cases for issues 3907 and 4156. 2012-09-30 10:35:09 +02:00
bug456.go test/fixedbugs: forgotten test cases for issues 3907 and 4156. 2012-09-30 10:35:09 +02:00
bug457.go runtime: fix a panic when growing zero-width-element slices. 2012-10-06 12:05:52 +02:00
bug458.go cmd/gc: make rnd() more 64-bit-friendly. 2012-10-07 00:29:55 +02:00
bug459.go test: match gccgo error messages 2013-06-20 08:21:14 +02:00
bug460.go cmd/gc: Don't export embedded builtins 2012-10-07 06:53:57 +02:00
bug461.go cmd/gc: Don't export embedded builtins 2012-10-07 06:53:57 +02:00
bug462.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
bug463.go cmd/gc: replace "typechecking loop" by nicer errors in some cases. 2012-10-07 17:35:21 +02:00
bug464.go cmd/gc: replace "typechecking loop" by nicer errors in some cases. 2012-10-07 17:35:21 +02:00
bug465.go cmd/gc: fix inlining bug for composite literals in if statements. 2012-10-22 08:38:23 +02:00
bug466.go cmd/gc: don't squash complex literals when inlining. 2012-10-17 20:33:44 +02:00
bug467.go cmd/gc: fix incomplete export data when inlining with local variables. 2012-11-01 19:06:52 +01:00
bug468.go reflect: fix test of whether structs are identical 2012-11-07 11:55:35 -08:00
bug470.go test: add test for floating point rounding of constants 2012-11-26 08:31:15 -08:00
bug471.go test: add a test that caused gccgo to crash 2012-11-30 14:14:51 -08:00
bug472.go cmd/gc: add space to export data to match linker expectations 2013-01-09 22:02:53 +01:00
bug473.go test: add test case miscompiled by gccgo 2013-01-28 16:17:06 -08:00
bug474.go cmd/gc: fix escape analysis of method values 2013-03-20 23:53:27 -04:00
bug475.go test: add a compilation test that gccgo failed to compile 2013-07-16 15:31:42 -07:00
bug476.go all: fix a few spelling errors in source comments 2013-12-27 08:59:02 -08:00
bug477.go test: add a test that gccgo failed to compile 2013-09-18 15:47:50 -07:00
bug478.go test: add a test that gccgo failed to compile 2013-09-18 16:30:38 -07:00
bug479.go test: add a test that causes gccgo to get a failure at link time 2013-09-19 15:20:39 -07:00
bug480.go test: add some test cases that were miscompiled by gccgo 2013-12-10 10:47:30 -08:00
bug481.go test: add some test cases that were miscompiled by gccgo 2013-12-10 10:47:30 -08:00
bug482.go test: add some test cases that were miscompiled by gccgo 2013-12-10 10:47:30 -08:00
bug483.go cmd/gc: record &x[0] as taking address of x, if x is an array 2014-02-15 20:01:15 -05:00
bug484.go cmd/gc: liveness-related bug fixes 2014-03-27 14:05:57 -04:00
bug485.go test: add test that gccgo compiled incorrectly 2014-05-06 09:01:38 -04:00
bug1515.go
issue887.go cmd/8g: add a few missing splitclean 2013-02-07 17:55:25 -05:00
issue2615.go cmd/gc: do not overflow parser stack on a long chain of else if. 2012-12-06 08:09:17 +01:00
issue3552.go cmd/gc: fix wrong interaction between inlining and embedded builtins. 2012-12-22 19:16:31 +01:00
issue3705.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue3783.go test: match gccgo error messages 2013-06-20 08:21:14 +02:00
issue3924.go cmd/gc: Make sure bools lose idealness when used with logical operators. 2012-11-26 22:23:13 +01:00
issue3925.go test: match gccgo error messages 2013-06-20 08:21:14 +02:00
issue4066.go cmd/5g, cmd/6g, cmd/8g: flush return parameters in case of panic. 2013-01-04 17:07:21 +01:00
issue4085a.go test: match gccgo error strings. 2013-06-26 18:05:02 +02:00
issue4085b.go cmd/gc: implement latest rules for checking make sizes 2013-02-03 14:28:44 -05:00
issue4097.go test: match gccgo error messages 2013-06-20 08:21:14 +02:00
issue4099.go cmd/gc: add way to specify 'noescape' for extern funcs 2013-02-05 07:00:38 -05:00
issue4162.go cmd/gc: allow new conversion syntax 2013-02-03 00:03:10 -05:00
issue4167.go cmd/gc: fix inlining internal error with T.Method calls. 2012-12-03 13:39:40 +01:00
issue4232.go test: match gccgo error strings. 2013-06-28 23:08:07 +02:00
issue4251.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue4252.go cmd/gc: do not export useless private symbols. 2012-12-08 14:43:00 +01:00
issue4264.go cmd/gc: Error out on division by constant zero. 2013-01-30 20:21:08 +01:00
issue4283.go test: add test for invalid nil == nil 2012-12-04 11:30:46 -08:00
issue4313.go cmd/gc: fix eval order in select 2012-12-22 16:46:01 -05:00
issue4316.go cmd/6l, cmd/8l: emit no-ops to separate zero-stack funcs from nosplits. 2012-11-26 21:51:48 +01:00
issue4323.go cmd/gc: fix inlining bug with local variables. 2012-11-01 18:59:32 +01:00
issue4326.go cmd/gc: annotate local variables with unique ids for inlining 2012-11-07 09:59:19 -05:00
issue4348.go test: re-enable issue4348.go. 2013-01-18 22:54:27 +01:00
issue4353.go cmd/6g, cmd/8g: mark used registers in indirect addressing. 2012-11-07 21:36:15 +01:00
issue4359.go cmd/gc: fix internal compiler error with broken structs. 2012-11-07 23:09:01 +01:00
issue4370.go cmd/gc: fix export of inlined function body with type guard 2012-11-08 16:07:05 -05:00
issue4388.go cmd/gc: record line number for auto-generated wrappers as <autogenerated>:1 2014-05-12 11:59:55 -04:00
issue4396a.go cmd/5g: use MOVB for fixed array nil check 2012-12-06 08:01:33 +11:00
issue4396b.go cmd/5g: use MOVB for fixed array nil check 2012-12-06 08:01:33 +11:00
issue4399.go cmd/8g: fix erroneous LEAL nil. 2012-11-21 08:39:45 +01:00
issue4405.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue4429.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue4448.go cmd/5g, cmd/8g: fix internal error on 64-bit indices statically bounded 2012-11-27 21:37:38 +01:00
issue4452.go test: match gccgo error strings. 2013-06-28 23:08:07 +02:00
issue4458.go test: match gccgo error messages 2013-06-20 08:21:14 +02:00
issue4463.go test: match gccgo error strings. 2013-06-28 23:08:07 +02:00
issue4468.go test: add some tests where go/defer arg starts with parenthesis 2012-12-05 20:32:12 -08:00
issue4470.go cmd/gc: Reject parenthesised .(type) expressions. 2012-12-22 17:36:10 +01:00
issue4495.go cmd/gc: remove bad check for BADWIDTH 2012-12-11 17:36:10 +01:00
issue4510.go cmd/gc: make redeclaration between import and func less confusing 2013-01-02 15:34:28 -05:00
issue4517a.go cmd/gc: add diagnostic for var, type, const named init 2012-12-22 17:23:33 -05:00
issue4517b.go cmd/gc: add diagnostic for var, type, const named init 2012-12-22 17:23:33 -05:00
issue4517c.go cmd/gc: add diagnostic for var, type, const named init 2012-12-22 17:23:33 -05:00
issue4517d.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue4518.go cmd/6g: fix componentgen for funarg structs. 2012-12-17 22:29:43 +01:00
issue4529.go cmd/gc: remove an incorrect assertion in escape analysis. 2012-12-20 23:27:28 +01:00
issue4545.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue4562.go cmd/gc: fix error line in switch expr eval 2012-12-22 10:01:15 -05:00
issue4585.go cmd/gc: fix handling of struct padding in hash/eq. 2013-01-18 22:40:32 +01:00
issue4590.go cmd/gc: mark wrapper methods for unnamed types as DUPOK. 2013-01-02 21:42:26 +01:00
issue4610.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue4614.go cmd/gc: fix uintptr(nil) issues. 2013-01-08 00:23:02 +01:00
issue4618.go runtime: combine small NoScan allocations 2014-01-24 22:35:11 +04:00
issue4620.go cmg/gc: Fix evaluation order of map indexing during multiple assignments 2013-02-02 12:39:04 +01:00
issue4654.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue4663.go cmd/gc: implement new return requirements 2013-03-04 17:02:04 -05:00
issue4667.go runtime: combine small NoScan allocations 2014-01-24 22:35:11 +04:00
issue4734.go test: add test that caused a gccgo compilation failure 2013-01-31 15:59:30 -08:00
issue4748.go cmd/gc: make inlined labels distinct 2013-02-03 11:19:22 -05:00
issue4752.go cmd/gc: fix &^ code generation bug 2013-02-04 00:21:44 -05:00
issue4776.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue4785.go cmd/8g: fix sse2 compare code gen 2013-02-14 14:49:04 -05:00
issue4813.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue4847.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue4879.go cmd/gc: fix corruption in export of &T{} literals. 2013-02-26 00:43:31 +01:00
issue4909a.go cmd/gc: fix Offsetof computation. 2013-04-05 21:24:07 +02:00
issue4909b.go cmd/gc: fix Offsetof computation. 2013-04-05 21:24:07 +02:00
issue4932.go cmd/gc: unbreak exporting of composite literals. 2013-03-04 16:42:03 +01:00
issue4964.go cmd/gc: fix escape analysis bug. 2013-03-15 09:03:45 +01:00
issue5002.go cmd/8g: fix code generation of int64(0) == int64(0). 2013-03-07 21:47:45 +01:00
issue5056.go cmd/gc: steal escape analysis info when inlining 2013-03-18 22:22:35 +01:00
issue5089.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue5105.go cmd/5l, cmd/6l, cmd/8l: fix segfault on reading LOCALS for a duplicate definition. 2013-03-25 22:09:55 +01:00
issue5125.go cmd/gc: be more tolerant with recursive types when checking map types. 2013-04-03 08:18:30 +02:00
issue5162.go cmd/gc: do not reuse bool temporaries for composite equality. 2013-04-01 21:01:50 +02:00
issue5172.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue5231.go cmd/gc: properly set variadic flag on method values. 2013-04-08 08:59:33 +02:00
issue5244.go cmd/gc: compute initialization order for top-level blank vars too. 2013-06-11 22:21:51 +02:00
issue5259.go cmd/gc: disable inlining of method values 2013-04-13 08:22:16 +02:00
issue5260.go gc: escape unicode BOM in exported string literals 2013-04-11 11:45:18 -07:00
issue5291.go cmd/gc: initialize t->width in dgcsym() if required 2013-04-25 18:47:12 +02:00
issue5358.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue5470.go cmd/gc: repair make(T) in export data for inlining. 2013-05-16 09:01:43 +02:00
issue5493.go test: disable a couple of precise GC tests for gccgo 2013-12-12 17:13:27 -08:00
issue5515.go cmd/gc: save local var list before inlining 2013-06-11 20:23:21 -07:00
issue5581.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
issue5607.go cmd/gc: do not corrupt init() with initializers of _ in closures. 2013-06-02 23:54:34 +02:00
issue5609.go test: match gccgo error strings. 2013-06-28 23:08:07 +02:00
issue5614.go cmd/gc: fix missing slice/array types in export data. 2013-06-04 08:18:36 +02:00
issue5698.go cmd/gc: fix computation of equality class of types. 2013-07-02 09:08:43 +02:00
issue5704.go spec: fix spec on conversions to match implementations 2013-06-21 16:11:13 -07:00
issue5753.go cmd/gc: fix issue with method wrappers not having escape analysis run on them. 2013-07-02 17:12:08 +02:00
issue5755.go cmd/gc: fix missing export data for inlining in a few other cases. 2013-06-28 23:29:13 +02:00
issue5793.go cmd/gc: allow append and complex builtins to accept 2-result call expression as first argument. 2014-03-05 14:16:21 -05:00
issue5809.go cmd/6g, cmd/8g: prevent constant propagation of non-constant LEA. 2013-07-05 16:11:22 +02:00
issue5820.go cmd/8g: Make clearfat non-interleaved with pointer calculations. 2013-07-17 11:04:34 +02:00
issue5841.go cmd/gc: avoid passing unevaluated constant expressions to backends. 2013-07-25 09:42:05 -04:00
issue5856.go cmd/5g, cmd/6g, cmd/8g: fix line number of caller of deferred func 2013-07-12 13:47:55 -04:00
issue5910.go cmd/gc: fix inlining of unnamed structs with embedded fields. 2013-08-05 22:09:53 +02:00
issue5957.go cmd/gc: show package name in 'imported and not used' error 2013-09-09 12:21:09 -04:00
issue5963.go runtime: handle runtime.Goexit during init 2013-07-26 13:54:44 -04:00
issue6004.go cmd/gc: diagnose '_ = nil' better 2013-09-09 12:49:39 -04:00
issue6036.go cmd/6g: handle very wide offsets. 2013-09-09 20:36:19 +02:00
issue6055.go runtime: Better test tracebackability of jmpdefer when running a nil defer. 2013-08-09 15:27:45 -07:00
issue6131.go cmd/gc: add missing typecheck for walk-generated constants. 2013-09-06 16:55:30 -04:00
issue6140.go cmd/gc: fix method values whose receiver is an unnamed interface. 2013-08-29 10:00:58 +02:00
issue6247.go cmd/5g: avoid clash between R13 and F3 registers. 2013-08-27 21:09:16 +02:00
issue6269.go cmd/gc: make method names for function scoped types unique 2013-08-29 16:48:44 +02:00
issue6295.go cmd/gc: preserve qualified names of unexported methods in imports. 2014-01-21 22:55:50 -05:00
issue6298.go cmd/gc: fix 'internal error: typename ideal bool' 2013-09-09 12:00:16 -04:00
issue6399.go cmd/gc: fix divide by zero error in compiler 2013-09-16 14:22:37 -04:00
issue6402.go cmd/gc: fix spurious 'use of untyped nil' error 2014-03-27 18:47:00 +01:00
issue6403.go cmd/gc: fix spurious 'const initializer is not a constant' error 2014-03-24 20:36:42 +01:00
issue6405.go cmd/gc: fix spurious 'not enough arguments to return' error 2014-03-14 16:42:42 +01:00
issue6406.go cmd/gc: silence assignment errors to undefined symbols 2014-01-03 21:03:20 +01:00
issue6500.go cmd/gc: reject incorrect use of fallthrough. 2014-02-19 07:55:03 +01:00
issue6513.go cmd/gc: qualified embedded fields with owner package. 2013-10-02 12:27:33 -04:00
issue6572.go cmd/gc: do not typecheck nil types in multiple assignment 2014-01-21 22:44:54 -05:00
issue6789.go test: add some test cases that were miscompiled by gccgo 2013-12-10 10:47:30 -08:00
issue6847.go cmd/gc: fix spurious type errors in walkselect. 2014-03-13 08:14:05 +01:00
issue6889.go cmd/gc: avoid confusing error message "ovf in mpaddxx" 2014-04-09 08:36:27 +02:00
issue6899.go runtime: check for signed zero in printfloat 2013-12-09 17:51:30 -08:00
issue6899.out runtime: check for signed zero in printfloat 2013-12-09 17:51:30 -08:00
issue6902.go cmd/gc: round floats with a large negative exponent towards zero 2014-03-24 10:10:29 -07:00
issue6964.go cmd/gc: fix comparison order of parameters in mpcmpfltc(a, b) 2013-12-16 16:54:10 -05:00
issue7023.go cmd/gc: mark OGOTO as a statement for formatters. 2014-01-10 01:33:24 +01:00
issue7044.go liblink: fix bad code generated for MOVFD/MOVDF when reg > 7 2014-03-11 14:04:44 -04:00
issue7083.go cmd/gc: return canonical Node* from temp 2014-01-14 10:43:13 -05:00
issue7129.go cmd/gc: increase specificity of errors in function call context 2014-04-11 15:57:30 +02:00
issue7150.go cmd/gc: fix array index out of bounds error message 2014-02-19 11:29:36 -08:00
issue7153.go cmd/gc: suppress array index error caused by a previously reported error 2014-03-29 15:45:40 +01:00
issue7214.go cmd/gc: check duplicate keys in maps with interface{} key type 2014-04-04 16:46:23 +02:00
issue7223.go cmd/gc: diagnose "make([]T, non-integer)" correctly. 2014-02-23 16:31:48 -05:00
issue7272.go cmd/gc: do not lower copy to a value node in go/defer. 2014-02-15 16:39:04 +01:00
issue7310.go cmd/gc: fix internal crash 2014-03-03 19:55:40 -05:00
issue7316.go cmd/gc: alias more variables during register allocation 2014-05-12 17:10:36 -04:00
issue7346.go cmd/gc: use a register to checknil constants. 2014-03-04 08:18:17 +01:00
issue7366.go cmd/gc: fix walkcompare bugs. 2014-02-24 19:51:59 +01:00
issue7405.go cmd/6g, cmd/8g: skip CONVNOP nodes in bgen. 2014-03-20 22:22:37 +01:00
issue7419.go cmd/gc: check exponent overflow and underflow in mparith 2014-03-19 05:48:00 +01:00
issue7525.go cmd/gc: fix error check for self-referential array type. 2014-03-17 20:26:19 -07:00
issue7538a.go cmd/gc: ignore blank (_) labels in label declarations 2014-04-09 08:34:17 +02:00
issue7538b.go cmd/gc: ignore blank (_) labels in label declarations 2014-04-09 08:34:17 +02:00
issue7547.go cmd/gc: compute size of keys & values before making map bucket 2014-04-04 12:58:19 -07:00
issue7550.go runtime: check that new slice cap doesn't overflow 2014-04-03 13:44:44 +11:00
issue7590.go test: add extra test case for issue 7590 2014-03-20 11:46:45 -07:00
issue7648.go cmd/gc: fix spurious "bad negated constant" for complex constants. 2014-04-01 02:55:38 -04:00
issue7675.go cmd/gc: fewer errors for wrong argument count 2014-04-16 22:42:09 -04:00
issue7742.go cmd/gc: fix typo in ordermapassign 2014-04-11 15:28:37 +02:00
issue7794.go cmd/gc: fix segfault in isgoconst. 2014-04-16 23:12:06 -04:00
issue7867.go cmd/gc: don't give credit for NOPs during register allocation 2014-05-09 09:55:17 -07:00