[llvm-branch-commits] [llvm-gcc-branch] r113112 - in /llvm-gcc-4.2/branches/release_28: ./ gcc/llvm-convert.cpp libada/Makefile.in
Bill Wendling
isanbard at gmail.com
Sun Sep 5 10:48:49 PDT 2010
Author: void
Date: Sun Sep 5 12:48:49 2010
New Revision: 113112
URL: http://llvm.org/viewvc/llvm-project?rev=113112&view=rev
Log:
Approved by Duncan:
$ svn merge -c 113107 https://llvm.org/svn/llvm-project/llvm-gcc-4.2/trunk
--- Merging r113107 into '.':
U gcc/llvm-convert.cpp
$ svn merge -c 113070 https://llvm.org/svn/llvm-project/llvm-gcc-4.2/trunk
--- Merging r113070 into '.':
U libada/Makefile.in
r113070 | baldrick | 2010-09-04 17:05:31 +0200 (Sat, 04 Sep 2010) | 2 lines
Temporary workaround for PR8051, which breaks the Ada front-end build.
r113107 | baldrick | 2010-09-05 15:25:32 +0200 (Sun, 05 Sep 2010) | 11 lines
Commit 106612 (stuart) broke the Ada front-end build. The
problem is that the Ada f-e likes to mark fields as bitfields
whether they are really bitfields or not. In Ada a bitfield
can be of any type (including struct and array types), while
commit 106612 only works properly for bitfields of scalar type.
When building the Ada f-e, the only non-scalar bitfields are
actually bogus bitfields - i.e. those that don't need to be
handled as bitfields at all. Thus the build can be fixed
by using the isBitfield predicate which only returns true for
non-bogus bitfields.
Modified:
llvm-gcc-4.2/branches/release_28/ (props changed)
llvm-gcc-4.2/branches/release_28/gcc/llvm-convert.cpp
llvm-gcc-4.2/branches/release_28/libada/Makefile.in
Propchange: llvm-gcc-4.2/branches/release_28/
------------------------------------------------------------------------------
svn:mergeinfo = /llvm-gcc-4.2/trunk:113070,113107
Modified: llvm-gcc-4.2/branches/release_28/gcc/llvm-convert.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/branches/release_28/gcc/llvm-convert.cpp?rev=113112&r1=113111&r2=113112&view=diff
==============================================================================
--- llvm-gcc-4.2/branches/release_28/gcc/llvm-convert.cpp (original)
+++ llvm-gcc-4.2/branches/release_28/gcc/llvm-convert.cpp Sun Sep 5 12:48:49 2010
@@ -8480,7 +8480,7 @@
// Zero-sized bitfields upset the type converter. If it's not a
// bit-field, or it is a bit-field but it has a non-zero precision
// type, go ahead and convert it.
- if (!DECL_BIT_FIELD_TYPE(Field) || TYPE_PRECISION(TREE_TYPE(Field)))
+ if (!isBitfield(Field) || TYPE_PRECISION(TREE_TYPE(Field)))
Val = Convert(FieldValue); // Decode the field's value.
if (DECL_SIZE(Field)) {
Modified: llvm-gcc-4.2/branches/release_28/libada/Makefile.in
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/branches/release_28/libada/Makefile.in?rev=113112&r1=113111&r2=113112&view=diff
==============================================================================
--- llvm-gcc-4.2/branches/release_28/libada/Makefile.in (original)
+++ llvm-gcc-4.2/branches/release_28/libada/Makefile.in Sun Sep 5 12:48:49 2010
@@ -55,7 +55,8 @@
include $(GCC_DIR)/libada-mk
TARGET_LIBGCC2_CFLAGS=
-GNATLIBCFLAGS= -g -O2
+# LLVM LOCAL pass -disable-physical-join as a temporary workaround for PR8051
+GNATLIBCFLAGS= -g -O2 -mllvm -disable-physical-join
# Get target-specific overrides for TARGET_LIBGCC2_CFLAGS
# and possibly GNATLIBCFLAGS. Currently this uses files
# in gcc/config. The 'subst' call is used to rerelativize them
More information about the llvm-branch-commits
mailing list