- Oct 17, 2023
-
-
Peter Klausler authored
When an unrepresentable nonzero real input value with a very small exponent is currently being read in as zero, don't neglect ROUND=UP/DOWN; return the least nonzero subnormal value instead when appropriate.
-
Tai Ly authored
This patch adds tosa.variable, tosa.variable.read and tosa.variable.write operators and tests. Change-Id: I647e2e5c3762d7890b03f6aa7c09a29198b7d355 --------- Signed-off-by:
Jerry Ge <jerry.ge@arm.com> Co-authored-by:
Jerry Ge <jerry.ge@arm.com>
-
Kirill Stoimenov authored
-
Peter Klausler authored
The code that folds the relatively new NORM2 intrinsic function can produce overflow in cases where it's not warranted. Rearrange to NORM2 = M * SQRT((A(:)/M)**2) where M is MAXVAL(ABS(A)).
-
Peter Klausler authored
Fortran allows forward references to type names, which can lead to ambiguity when coupled with host association, as in: module m type ambiguous; integer n; end type contains subroutine s type(ambiguous), pointer :: variable type t type(ambiguous), pointer :: component end type type ambiguous; real x; end type end end Some other compilers resolve to a host association, some resolve to a forward reference. This compiler will now emit an error. -
Amara Emerson authored
-
Amara Emerson authored
-
Paul Kirth authored
After 144c5b6d, we still see this test running in CI for aarch64-linux targets. This appears to be related to the triple being `aarch64-unknown-linux-gnu`, or similar. The bot link below includes 144c5b6d, and fails the deep-recursion.c test, which should have been disabled. https://luci-milo.appspot.com/ui/p/fuchsia/builders/toolchain.ci/clang-linux-arm64/b8767065085790662609/overview
-
Aart Bik authored
This cleans up all external entry points that will have to deal with non-permutations, making any subsequent refactoring much more local to the lib files.
-
Peter Klausler authored
A recent fix causes the TypeAndShape::Characterize() member function templates for general expressions and designators to avoid using the Characterize() member function for Symbols when the argument is a whole component. This caused the corank of a component to no longer be reflected in the returned TypeAndShape characteristics. Fix the regression.
-
Emilia Kond authored
Previously, upon encountering an equals sign while parsing a lambda in the UnwrappedLineParser, it would fall through and fail. This caused any lambda template with a default argument for a template parameter to be annotated as an ArraySubscriptLSquare. This patch allows equals signs in the UnwrappedLineParser if we're currently in a template parameter list. This resolved a FIXME that was in the lambda parsing function. This patch seems deceptively easy, it's likely it doesn't solve the FIXME entirely, or causes other issues (the FIXME itself mentions something about Objective-C, which I cannot comment about). However this patch is sufficient to fix the below issue. Fixes https://github.com/llvm/llvm-project/issues/68913 --------- Co-authored-by:
Owen Pan <owenpiano@gmail.com>
-
Peter Klausler authored
Use a higher-frequency clock base when initializing the pseudo-random number generator to implement CALL RANDOM_INIT(REPEATABLE=.FALSE.)
-
Markus Böck authored
The current implementation completely ignores argument attributes on calls, discarding them completely when creating a statepoint from a call instruction. This is problematic in some scenarios as the argument attributes affect the ABI of the call, leading to undefined behavior if called with the wrong ABI attributes. Note that this cannot be solved either by just having the function declaration annotated with the right parameter attributes as the call might be indirect, therefore requiring them to be present on the arguments. This PR simply copies all parameter attributes over from the original call to the created statepoint. Note that some argument attributes become invalid after the lowering as they imply memory effects that no longer hold with the statepoints. These do not need to be explicitly handled in this PR as they are removed by the `stripNonValidDataFromBody`.
-
Peter Klausler authored
Name resolution creates symbols for submodules in their parents' scopes. This can lead to bogus errors about name clashes between submodule names and other entities in the parents' scopes. Create symbols for submodules but do not add them to a scope's dictionary.
-
Peter Klausler authored
Support the EX edit descriptor for hexadecimal real formatted output and hexadecimal real input for all forms of formatted input.. (We're possibly the first Fortran compiler to support this feature for input editing; only one other can handle EX output editing.) As true (not BOZ) hexadecimal floating-point constants are not supported in Fortran source code, only in formatted input, the implementation takes place in the I/O editing portion of the runtime, not as new conversions in the Decimal library.
-
Piotr Zegar authored
Add information about what fixes are provided by the check, and how to enable them. Issue: #55093
-
Hui authored
This is transforming the `stop_token` benchmark that Lewis Baker had created into Google Bench https://reviews.llvm.org/D154702
-
Joseph Huber authored
Summary: This step was incorrectly called 'fatbinary', so if it failed here it would say 'fatbinary' was the cause of the failure. This is actually 'nvlink' so we should adjust this.
-
michaelrj-google authored
Recent testing has uncovered some hard-to-find bugs in printf's long double support. This patch adds an extra long double path to the fuzzer with minimal extra effort. While a more thorough long double fuzzer would be useful, it would need to handle the non-standard cases of 80 bit long doubles such as unnormal and pseudo-denormal numbers. For that reason, a standalone long double fuzzer is left for future development.
-
Alexey Bataev authored
This reverts commit 8e2b2c41 to fix a crash reported in https://lab.llvm.org/buildbot/#/builders/230/builds/19993.
-
Peter Klausler authored
…ent list When a derived type value appears in NAMELIST input, its components' values appear in sequence. This sequence can be truncated by a NAME= that begins the next NAMELIST input item, or by the terminal '/' that ends the NAMELIST group. Extend the mechanism already in place for truncated array item lists in NAMELIST input so that it also applies to derived type component sequences, and rename things appropriately.
-
Martin Storsjö authored
GNU windres supports this, while MS rc.exe doesn't. MS rc.exe only supports treating consecutive string literals as if they were fused into one in a few fixed locations (most of which are already supported), while GNU windres supports this essentially anywhere in any string. See b989fcba for one recent change that extended support for this in one specific resource. A reasonable use case for multiple concatenated string literals that GNU windres accepts is `1 ICON DIR "/name.ico"`, where the directory is provided via the preprocessor, expanding to another string literal; this is https://github.com/llvm/llvm-project/issues/51286. Extend the parser to try to consume all consecutive string tokens, whenever reading a filename. Adjust the handling of user data resources read from a file to use the readFilename() helper. While this probably doesn't cover every single case where GNU windr...
-
akirchhoff-modular authored
When the input document is non-empty, `mapOptional` works as expected, setting `std::optional` to `std::nullopt` when the field is not present. When the input document is empty, we hit a special case inside of `Input::preflightKey` that results in `UseDefault = false`, which results in the `std::optional` erroneously being set to a non-nullopt value. `preflightKey` is changed to set `UseDefault = true` in this case to make the behavior consistent between empty and non-empty documents.
-
Arthur Eubanks authored
This reverts commit e2e32f09. Breaks bots, e.g. http://45.33.8.238/linux/120748/step_4.txt
-
Alexey Bataev authored
During emission of the postponed gathers, need to insert them before user instruction to avoid use before definition crash.
-
Aart Bik authored
Moves typedef to only file where it is used. Removes some deadcode. Some minor doc changes.
-
Valentin Clement (バレンタイン クレメン) authored
Add lowering support for array with dynamic extents in the firstprivate recipe. Generalize the lowering so static shaped arrays and array with dynamic extents use the same path. Some cleaning code is taken from #68836 that is not landed yet.
-
Valentin Clement (バレンタイン クレメン) authored
Add support for array with dynamic extents in lowering of the reduction recipe.
-
Arthur Eubanks authored
-
Yingwei Zheng authored
This PR fixes the assertion failure of `SE.verify()` after loop vectorization.
-
Pete Steinfeld authored
I want to make "not yet implemented" messages for features related to coarrays easy to identify and make them easy for users to read.
-
Florian Hahn authored
Also print the operands of VPCanonicalIVPHIRecipe. That was missed earlier.
-
antangelo authored
[clang][Sema] Use original template pattern when declaring implicit deduction guides for nested template classes (#68379) When a nested template is instantiated, the template pattern of the inner class is not copied into the outer class ClassTemplateSpecializationDecl. The specialization contains a ClassTemplateDecl with an empty record that points to the original template pattern instead. As a result, when looking up the constructors of the inner class, no results are returned. This patch finds the original template pattern and uses that for the lookup instead. Based on CWG2471 we must also substitute the known outer template arguments when creating deduction guides for the inner class. Fixes #46200 Fixes #57812
-
Jacek Caban authored
-
Florian Hahn authored
Replace some hardcoded value numbers in CHECK-LINES to use patterns, to make the tests more robust wrt renumbering.
-
Jacek Caban authored
Since EC targets may combine various object types, we need to pick relocation format based on chunk type instead of global config.
-
Peiming Liu authored
-
5chmidti authored
The BoundNodesTreeBuilder used in the BaseSpecMatcher was the original and was reset to its original state if a match occurred. The matcher now uses the local copy in the inner matcher. Fixes https://github.com/llvm/llvm-project/issues/65421
-
Yitzhak Mandelbaum authored
Widen on backedge nodes, instead of nodes with a loop statement as terminator. This fixes #67834 and a precision loss from assignment in a loop condition. The commit contains tests for both of these issues.
-
Peiming Liu authored
-